Revert "Revert "SERVER-15870 Prune command stats for commands that haven't run""

This reverts commit 3e31d5fab0a5ab48378a04b01ae045997af1d41a.
SERVER-15870 fix up some tests depending on unpruned serverStatus
SERVER-15889 Update list of targetable OS X versions
SERVER-14747 SERVER-14753 Add validation tests for memory leak fixes
SERVER-15888: Ensure MODE_X on implicit DB creation

Also adds new API to DBLock to allow relocking in different mode.
SERVER-15913 QueryStageKeep dbtest shouldn't leak KeepMutationsStage
SERVER-15890 Add correctness test for multi version initial sync.
SERVER-14860 Handle duplicate key/value in btree, for background indexing
SERVER-14860 Re-add support for interruptable background index builds on secondaries.
SERVER-14860 Refine locking scheme for background index builds, to support doc-level-locking storage engines
SERVER-15842 check db pointer after establishing read lock in M/R
SERVER-15655 Fix remove1.js test
SERVER-15684 Make copydb from localhost not call auth
SERVER-15888: fix locking on collection mods in dbtests
SERVER-15888: fix lock for collection creation in profiling
SERVER-13635: fix rollback of collection create in kv engine
SERVER-15888: WriteContext will switch from MODE_IX to MODE_X if collection doesn't exist
SERVER-15888: add invariant check in kv engine that have correct lock for collection create/drop
SERVER-14425: make deadlock logging less spammy
SERVER-15758 fix leak of single query solution in SubplanStage