Updated UserOperationTest

Create a sessions for the new users we want to test
Fixed Async connection not closing issue.

Connections are passed in and closed for Async Command or BaseWrite operations.
PinnedSessions now return a DelayedCloseConnection for Async operations as well.
Add client.executeAsync

Follow the client.execute example
Added AsyncInsert and tests
Bumped Netty to 4.0.18.Final

See: http://netty.io/news/2014/04/01/4-0-18-Final.html
JAVA-1155
Fixing classpath for javadoc
Added @since 2.12 Javadoc annotation to some public classes added in that release.
JAVA-1057: Fixing up exception messages for server selection timeout.
Added some excluded method in AggregationOutput to clirr-exclude.yml
Fixed bug in AggregationOptions.toNew
Separated aggregate explain functionality into its own Operation implementation.
Changed name of ServerSelector choose method to select
Removed ChainingServerSelector in favor of CompositeServerSelector
Moved all common selectors in to org.mongodb.selector
Added ServerSelector to ClusterSettings, to be applied as the final selector in calls to Cluster.selectServer
Making InlineMongoCursor package private
Move handling of query document creation to QueryOperation.
Removed AggregationCursor and replaced with MongoQueryCursor, which can now handle the aggregation use case