Cluster now extends Closeable
MongoClient now extends Closeable

 JAVA-1501
Using waitQueueSize atomic integer properly in BaseCluster
Added Server.getConnectionAsync and supporting implementation in DefaultServer and DefaultConnectionPool
The connection pool implements it with a single threaded executor service and handles wait queue size and timeout enforcement

  JAVA-1200
DefaultConnectionPool.getAsync now opens each connection asynchronously.

 JAVA-1200
Removed timeout in AsyncQueryBatchCursorSpecification