Adding logging and loggable infrastructure

This provides the 3.0 driver with logging ability and gives any object implementing `Mongo::Loggable` the ability to easily log by executing blocks that track the time spent in the operations.