Merge pull request #138 from rozza/3.0.x

Fix doc string link
Misc checkstyle Javadoc fixes: replaced <code> with @code; docs for missing tags; docs for methods missing documentation
Added support for killing multiple cursors in a single message
Added support for cursor cleaning thread in Mongo, to kill orphaned cursors.  This is functionality that's been in the driver for a long time,
and there may be users relying on it, so porting it to 3.x.
Implemented DropCollectionOperation, after much heartache and a false where I should have true-ed.
DropCollectionOperation now working with changes from 3.0.  Tests added.
Removed unused fields/whitespace
Implemented DropIndexOperation for driver and driver-compat; deleted DropIndex command; moved the basic dropIndex tests from the old collection test to the new functional test; added more tests for dropIndex in the driver module.
Fixed results of codereview:
 - Constructor params on DropCollectionOperation
 - Missing executeOperation on DBCollection
Also added JavaDoc in places.
Took Connection and ConnectionFactory package private, as there is no real need to have it part of the public API now that we have Stream and StreamFactory
Took ChannelProviderFactory package private, as there is no real need to have it part of the public API.
Took ClusterableServer, ClusterableServerFactory, and ChannelProvider package private, as there is no real need to have it part of the public API.
Updated gradle release plugin dependency to 0.1
Got rid of async connection, async session and async operations.  Add Protocol.executeAsync and implementations for all protocols.
Added AsyncOperation and made most implementations implement it.
Moved protocol package out of operation
Moved message classes into protocol.message
Move classes from org.mongodb.connection.impl to org.mongodb.connection
Moved ChainingServerSelection from connection to session
Renamed ChannelProviderSettings to ConnectionPoolSettings
Collapsed authentication helpers since the async authenticators are gone
Renaming Connection to InternalConnection
Renaming Channel to Connection
JAVA-845: Added support for use of a different service name for Kerberos Authentication via GSSAPI.
By default, the service name remains "mongodb", but can be altered via the addition of a mechanism property to the credential.
Moved async-related interfaces from org.mongodb.async to org.mongodb
Converted SocketSettings to use TimeUnit, to be consistent with all other Settings classes
Making com.mongodb.DBObjects package private