async fn handle_connection<S: ConnectionHandler>(
    server_ref: Arc<S>,
    conn: TcpStream
)