marked MongoConnection fields as readonly where possible
Added OpenAsync, CloseAsync, SendMessageAsync and ReceiveMessageAsync methods to MongoConnection, added corresponding integration test (using test instance of mongodb).
Added ExecuteAsync to CommandOperation class
Added AuthenticateAsync method declaration to IAuthenticationProtocol interface and corresponding implementations
Added AuthenticateAsync method to Authenticator, and used it in MongoConnection.OpenAsync