SERVER-16108: Remove extra Timer and std::string in AutoGetCollectionForRead
SERVER-16046: do oplog cleanup in a different txn so it can fail
remove scope of locking when putting sessions back into pool
SERVER-16109: remove excessive log syncing in WT size storer
SERVER-16013 Wrap WiredTiger callbacks called from C in try-catch blocks.
SERVER-16105 do not hold any locks when exiting via shutdown command
SERVER-5952 Remove authenticate messages from --quiet logging
SERVER-13635 added unit test for KVDatabaseDatalogEntry::createCollection
             disallow empty namespace in createCollection
SERVER-15684 Expand copyDatabase helper with optional auth mech
SERVER-14507 redact command parameters for LOG(2)
SERVER-16069 Input validation on the arguments to createCollection
SERVER-13627 Test that replSetReconfig prohibits 0-vote arbiter.

This re-applies commit 6eccc037b1e6d22d60d0e7aec39dcc183a756790 with a fix
for occasional failures of zero_vote_arbiter.js:

    Don't assume that the first member started is always the primary.

Closes #856

Signed-off-by: Benety Goh <benety@mongodb.com>
SERVER-15269 Move Lock manager queue management to a separate class
SERVER-15269 Make Global and Flush lock requests jump the queue

The S and X modes on the Global and Flush locks are used for servicing
functions such as shutdown or replication step-down. Those should be
blocked minimally, so they should be able to get the lock with preference.
SERVER-15884 Clean up mongod --version output
SERVER-15235 regular expressions with the '|' character must be classified as simple
SERVER-16036 change DBQueryQuery.count() shell helper to return the explain result rather than a cursor
SERVER-15917 fix explain of write commands against a non-existent database
SERVER-15958 initialize IndexScanStats fields isMultiKey and indexName on IndexScan construction
SERVER-15988 fix dead code in CachedPlanStage