pub async fn send_message_receive_reply<M, R, E>(
    message: impl Into<M>,
    message_tx: &MessageSender<M>,
    reply_rx: ReplyReceiver<R>
) -> PluginResult<R, E> where
    M: Debug,
    E: StdError