added IBsonSerializerRegistry to bson library to for future support of contextual serializers.
CSHARP-978: added IMongoClient, IMongoDatabase, implementations, and tests.
fixed accidental file copy.
refactored testing of operation based methods in MongoDB.Driver.
CSHARP-875: Removed all code from high level driver that now belongs in Core and temporarily replaced it with NotImplementedExceptions.
Got enough of the legacy API working on top of Core for the test configuration to startup and for the first test (TestMetaText) to pass.
Ported the classes that emulate CRUD opcodes using write commands from 1.x to 2.x.
Removed everything but Version from MongoServerBuildInfo.
Move IsWritable to an extension method on ServerType in Core.
Let legacy API methods that are command based continue to use the high level RunCommandAs (at least for now).
Implemented MongoCursor. All MongoDatabaseTests are now passing.
All MongoServer tests now pass.
Removed RefreshStateAsSoonAsPossible and VerifyState.
Got a lot of MongoCollectionTests passing. Still a few more to go.
Added MaxBatchCount, MaxDocumentSize, MaxMessageSize and MaxWireDocumentSize to ServerDescription. Refactored ServerDescription to use new Optional<T> class and single With method.
Modified InsertBatch to correctly handle multiple batches when w=0 and continueOnError=false. That required postponing until the very last minute the decision whether to send the getLastErrorMessage, which was done by introducing an optional ShouldBeSent delegate.
Got another MongoCollection test to pass (related to MongoDuplicateKeyException). Consolidated the logic in the ExceptionMapper in one Map method and have the other Map method call it.
Implement Limit in Cursor.
Reverted ExceptionMapper Map method back into two methods and made sure to call one or the other method in the same way we did in 1.x in order to get the same exceptions thrown in 2.x.
Changed result type of Execute methods for write WireProtocol and OpcodeOperation classes from BsonDocument to WriteConcernResult because all callers were immediately converting the BsonDocument to a WriteConcernResult.