[JAVA-1453] Applied 3.0 updated documentation to 2.13 code
Create a collection to ensure a database is created
Added errorMessage and serverAddress properties to CommandFailureException and WriteConcernException
as replacements for commandResult property.

 JAVA-1480
Support sharded DuplicateKey exceptions

JAVA-1103
Deprecated all methods and constructs in DBRef and DBRefBase that depend on the DB class. Also deprecated DBRefBase.

 JAVA-1505
Fixed documentation of return value for  BSONObject.put to indicate that it returns the previous value associated with the given key.
Also fixed some Javadoc in BSONObject implementations.

  JAVA-1502
Added missing @Override annotations
Added a way to disable batch size tracking on DBCursor in order to avoid the list which tracks each batch size from growing
indefinitely (a problem mostly for high-volume tailable cursors).

  JAVA-591
DBCursor's OptionalFinalizer inner class is now static and only contains fields necessary to kill the cursor.
Doing this prevents it from holding references to the DBCursor state which it does not actually need, allowing the garbage collector
to reclaim that memory before the finalizer runs.

     JAVA-1519
Merge pull request #274 from jyemin/JAVA-1519

JAVA-1519: DBCursor's OptionalFinalizer inner class is now static and only contains fields necessary to kill the cursor
JAVA-1530: Add getLimit() and getBatchSize() to DBCursor
Update README.md
Update README.md
Updated auth test to use default credential type instead of MONGODB-CR
Work around localhost exception issues in addUser helper

JAVA-1528
Merge pull request #277 from fmela/master

JAVA-1530: Add getLimit() and getBatchSize() to DBCursor
Deprecated LazyWriteableDBObject and related classes

 JAVA-1536
Added Javadoc for Lazy objects, lists, callbacks, and decoders.

  JAVA-1428
Deprecated DBCollection.apply and DBCollection.doapply methods, as they will be removed in the next major release.

 JAVA-1517