SERVER-11275 Remove some uses of integer literals in oplog code.
SERVER-11295 Encode 'anyAction' in a future-proof way
SERVER-11178: Introduce IndexCatalog and requirements
IndexCatalog will be the only place to get information about indexes, and modify them
still a lot of work left, but a lot of the logic is now shifted
SERVER-11214 drop_sharded_db.js (sharding_auth) failed on Linux 64-bit DEBUG

Fix race in ClientCursor::invalidate
SERVER-8864 Fixed ssl/replset1.js test
SERVER-10830 use $WIX and $MERGEMODULESBASEPATH for enterprise msi
SERVER-10830 use 'enterprise' for enterprise module directory name
SERVER-11104 make sure orphaned data command uses valid shard key
SERVER-11178: fix validate for new extent semantics
SERVER-10830 Don't break on nonexistant MSI related environment variables
SERVER-11302 Remove deadlock between admin database write lock and _fetchPhaseIsReady in AuthMgr.

This is achieved in two parts.  First, this patch changes the approach to
invalidation of the user info cache in the AuthorizationManager.  Rather than
wait for _fetchPhaseIsReady, this patch invalidates the patch immediately and
bumps a cache generation counter.  Methods that enter the fetch phase in
preparation for updating the cache check that the generation numbers before and
after the fetch phase are equal.  If they are not, the fetched user document is
marked invalid and not inserted into the cache.

Second, the patch eliminates a self deadlock caused by recursive acquisition of
the global write lock when a DBDirectClient is used to update user data via the
AuthzManagerExternalStateMongoD interface.
SERVER-11302 Do not do auth checks when operating on behalf of a DBDirectClient.

When the server delegates work on behalf of a user to DBDirectClient, the server
should already have validated the user's privileges to take whatever logical
action the server is performing.  DBDirectClient itself inherently represents
actions taken by the server, and so it doesn't make sense to do access-control
checks there.

This change eliminates a deadlock risk in access control checks inside
DBDirectClient, and resolves UDR bugs stemming from a DBDirectClient performing
an unexpected access-control check, such as SERVER-11310.
SERVER-11319 Remove the word 'Any' from the names of a few ActionTypes
SERVER-11337 Make error reporting for exceptions thrown in commands consistent
SERVER-11310 Fix resource extraction for access control check in group command
SERVER-10968 Not logging expected SSL socket close as error
SERVER-9233 fix sporadic smokeAuth buildbot failures

Signed-off-by: Spencer T Brody <spencer@10gen.com>
SERVER-11275 Apply relevant oplog entries to authorization manager.

Also, reinitialize the AuthorizationManager's data structures after
replication initial sync.
SERVER-11275 Fix build for old GCCs.
SERVER-11300 Fix cycle detection in role management commands