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.