pub async fn send_ping<S>(stream: S) -> Result<(S, Duration), Error> where S: AsyncRead + AsyncWrite + Unpin,
Sends a ping and waits for the pong.