Introduced AuthenticationMongoSyncConnection, which is responsible for authenticating a wrapped connection.  So the raw connection no longer needs to worry about it.
Made field volatile for thread safety.
Fixed broken test.  It didn't work with SSL enabled.