SERVER-9768 create non-dying entry point for running initializers, for use by C++ driver users
Revert "SERVER-9704 break out socket init for Windows"

This reverts commit 1a21ab350155db13fac0938114dc0b9c8ef81fb9.
Going to wait until C++ driver changes have made this easier to acheive.
SERVER-9518 Initial implementation of new User class
SERVER-8798 Removing user credentials from auth cache on logout
SERVER-9698 Improve error reporting in mongostat when run with insufficient privileges.

With this patch, a user running mongostat without sufficient privilege to
execute serverStatus on the targeted server will see the following message:

<hostname>	serverStatus failed: unauthorized

The mongostat process will _not_ terminate in this circumstance, nor did it
before this patch.

With this patch, a user running mongostat with sufficient privilege to run
serverStatus against an instance of mongos, but without sufficient privilege to
read from the cluster's config.shards collection will periodically see the
following output:

<hostname>	nextSafe(): { $err: "not authorized for query on config.shards", code: 16549 }

The mongostat process will _not_ terminate in this circumstance.  Previous
behavior was to print a stack trace and terminate.
SERVER-9518 Small change to comment