SERVER-10670 Allow acquireUser to drop the cache mutex while doing disk/network IO.

Introduces CacheGuard abstraction and notion of "fetch phase" of updates, for handling
disk and network activity.