fixing authentication chicken/egg problem
initial fix for issue with infinite timeouts.
fixing tests which were asserting the wrong exception type.
CSHARP-1070: Use new listCollections command when connected to a server that supports it.
CSHARP-1070: Make sure GetCollectionNamesAsync goes to the primary.
Get tests to pass against server 2.7.7 using heap1 storage engine.
Modify TestParallelScan to not assume that the server will always return the requested number of cursors. The server is free to return fewer.
Added checks to make sure maximum database name and collection name lengths are not exceeded when constructing test database and collection names.
fixed issue with not using the default authenticator when no mechanism was specified.
added better support for reporting errors when unable to select a server.