When implementing tests for signing and/or encrypting messages, we can just implement the `MessageSender`/`MessageReceiver` traits when needed then call into this function.
(Those traits may need refactoring if the format of the adapter is not desireable (i.e. `&self` instead of `&mut self` or `self`; we could only blanket-impl those function to `Fn()` closures, not `FnMut()` or `FnOnce()`. (not that we should try this.)), but for now we"ll leave it as it is.)
Fortune for rsh's current commit: Small blessing − 小吉