Added a smoke test for the async driver

Refs: JAVA-1564 JAVA-1565
Added regression check for null items occuring in the collection names

JAVA-1564
Connection pool invalidated when an asynchronous socket exception is returned from send or receive message callbacks.

  JAVA-1345
DocumentCodec now encodes and decodes List and Map values

  JAVA-1358
Removed UnacknowledgedWriteException class
Renamed MongoQueryFailureException to MongoQueryException
Renamed CommandFailureException to MongoCommandException
Renamed com.mongodb.bulk.BulkWriteException to com.mongodb.MongoBulkWriteException
Added MongoNodeIsRecoveringException and MongoNotPrimaryException

 JAVA-1570
DefaultServer no longer invalidates on a socket timeout exception.

 JAVA-1568
DBCollection Javadoc now more explicit about what exceptions it throws for write operations.
They call out DuplicateKeyException and WriteConcernException explicitly.