Javadoc for driver-core

Completed Javadoc for operation, protocol, and messages
With boolean params/return values, I try to be explicit about what true will do vs false. So the upsert param on DBCollection is `* @param upsert when true, inserts a document if no document matches the update query criteria`