async fn connect( addr: SocketAddr, user: Option<&str>, password: Option<&str>, ) -> Result<Client, Error>