refactored serialization providers.
refactored the serializer registry part of BsonSerializer into DefaultBsonSerializerRegistry.
CR changes.
Refactored DefaultBsonSerializerRegistry and moved the provider related code that was in it to the new TypeMappingSerializationProvider.
moved the location of the global type mapping cache into the global serializer registry.
CSHARP-1102: Remove RequestStart from the public API.
Added static SerializerRegistry to BsonSerializer and renamed DefaultBsonSerializerRegistry to BsonSerializerRegistry.
including extension method overloads to take an Expression tree for predicates.
CR Changes
refactored object to BsonDocument conversion.
added expression sort support to the fluent aggregation and find interfaces.
added expression helper for unwind.
CR Changes
CSHARP-1065: Changed BsonDocument to postpone creating the indexes dictionary until there are enough elements to justify it.