Add sasl_client_authenticate.h to dbclient.h
Fix Windows warnings -- unreferenced local variable
SERVER-8601 end line on waiting for distributed lock message
SERVER-8674 Update hyperlinks to point to dochub

Conflicts:
	CONTRIBUTING.rst
	jstests/updatel.js
	src/mongo/db/db.cpp
	src/mongo/db/geo/haystack.cpp
	src/mongo/s/config_upgrade_v3_to_v4.cpp
	src/mongo/util/version.cpp
SERVER-5442: use journal commit instead of fsync command for config server writes
SERVER-5442: need to resetError before doing the prepare
SERVER-8891 Destroy static objects in a safer order

Change the order of some static objects and group them near the
start of the source file, along with a comment explaining what is
going on.  The crashes we've seen have been due to destructors for
ReplicaSetMonitors (triggered by the destruction of _sets) trying
to use the _seedServers map, which had been destroyed already.  By
changing the order of the object definitions, we destroy _sets
before destroying _seedServers, preventing the crash.

There may be other cases that are not solved by this fix, and there
is still a race due to the running ReplicaSetMonitorWatcher thread,
so this is unlikely to be the last word on crashes of this type.
SERVER-8707 Stop the ReplicaSetMonitorWatcher loop on process termination

Use StaticObserver to end ReplicaSetMonitorWatcher's loop when a program
using the C++ driver exits.  Move the sleep to the bottom of the loop to
reduce the window between checking for termination and the call to
ReplicaSetMonitor::checkAll().
SERVER-8707 Sleep 10 seconds before entering ReplicaSetMonitorWatcher's loop

This restores the startup timing that was changed by commit
e3b8349ec305b00bdb7107f2d887549640a15c90, while preserving the
smaller time window within the loop between checking for
termination and calling ReplicaSetMonitor::checkAll().
SERVER-6956 Chunk::splitIfShould does not acquire the distributed balance lock when moving chunks

Convert verify into an errmsg to make it more friendly with the debug build test suite. Also fixed
MigrateStatusHolder so it will not accidentally cleanup migrateFromStatus logically owned by another
thread.
SERVER-6634 Handle negative and invalid skip values in count command

Conflicts:
	src/mongo/db/instance.cpp
SERVER-7108 Better message for uassert 9517
SERVER-2771 preliminary code cleanup; no functional change

Conflicts:
	src/mongo/SConscript
	src/mongo/db/btree.cpp
	src/mongo/db/btreecursor.cpp
	src/mongo/db/client.cpp
	src/mongo/db/clientcursor.cpp
	src/mongo/db/cloner.cpp
	src/mongo/db/commands/distinct.cpp
	src/mongo/db/commands/mr.cpp
	src/mongo/db/compact.cpp
	src/mongo/db/curop.cpp
	src/mongo/db/curop.h
	src/mongo/db/cursor.cpp
	src/mongo/db/dbcommands.cpp
	src/mongo/db/dur_recover.cpp
	src/mongo/db/dur_recover.h
	src/mongo/db/extsort.cpp
	src/mongo/db/index_update.cpp
	src/mongo/db/instance.cpp
	src/mongo/db/pdfile.cpp
	src/mongo/s/d_migrate.cpp
	src/mongo/util/touch_pages.cpp
buildbot sharding_balance4.js explicitly report chunk manager sequence number when available in setShardVersion
Introduced constants to refer to collection names and fields in the config server.

Conflicts:
	src/mongo/SConscript
	src/mongo/s/commands_admin.cpp
	src/mongo/s/config.cpp
	src/mongo/s/config_migrate.cpp
	src/mongo/s/shard.cpp
Reorder query criteria for chunks query to make more efficient.
comment on writeback change
SERVER-939 Introduced more collection and fields names constants.

Conflicts:
	src/mongo/s/balance.cpp
	src/mongo/s/balancer_policy_tests.cpp
	src/mongo/s/d_migrate.cpp
	src/mongo/s/d_split.cpp
	src/mongo/s/grid.cpp
SERVER-939 Introduced type for config.collection docs.
SERVER-939 Included generic bson header (fix compile)