change return type of TcpClient::async_reconnect