Added DBObjectCodec to DBObjectCodecProvider

  JAVA-1503
Split out ValueCodecProvider
Introduce default codec registry to MongoClient

  JAVA-1503
Cleaning up DBObjectCodec and DBObjectCodecProvider and made them public.

   JAVA-1503