SERVER-3364 Introduce MONGO_CLIENT_API macro for labeling types, functions and variables.

Also addresses SERVER-5650.
SERVER-3364 Label enough of the client api with MONGO_CLIENT_API to build httpClientTest.

Conflicts:
	src/mongo/client/examples/httpClientTest.cpp
	src/mongo/util/assert_util.h
minor: make Timer class less crtstartup initialization order sensitive
SERVER-12033: Add proper NUMA check for Windows
Fix Windows OS Version names
cleaning of windows compiler wwarnings

Conflicts:
	src/mongo/s/dbclient_shard_resolver.cpp
fix typos / transpositions of pragmas in the last commit
SERVER-12110 Safe buffer handling in SSL pw callback
SERVER-12110 Fix assertion number collision
SERVER-12156 Split version.h/cpp into version and version_reporting.
SERVER-11144 Add unittest entry for linux specific option
SERVER-11144 Add tests for option positions in registration unittests

Conflicts:
	src/mongo/tools/mongo2toku_options_test.cpp
SERVER-11271 fix unit tests
SERVER-12149 Deprecate --diaglog server option and hide option
SERVER-11792 Fixed mongos option help to specify size units

Signed-off-by: Matt Kangas <matt.kangas@mongodb.com>
SERVER-11144 Swap meaning of prevalidation return value and add comment

Conflicts:
	src/mongo/shell/shell_options.cpp
	src/mongo/tools/mongo2toku_options.h
	src/mongo/tools/mongo2toku_options_init.cpp
	src/mongo/tools/mongooplog_options.cpp
SERVER-7082 Make noauth and keyFile options incompatible

Conflicts:
	src/mongo/db/mongod_options.cpp
SERVER-11471 Support true as the verbosity
SERVER-11144 Change new config file option structure

Conflicts:
	jstests/sharding/movechunk_with_def_paranoia.js
	jstests/slowNightly/command_line_parsing.js
	src/mongo/db/mongod_options.cpp
	src/mongo/db/server_options_helpers.cpp