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.