SERVER-15541 Simplify the save/restore lock state code

There is no need to keep around the recursion counts, because yielding
only happens at the top-most level.
SERVER-15614 LockerImpl changes for diagnostics

* We need to be able to map back from Locker objects to the operations, which own them, so introduce a LockerId type.
* Put the internal locking logic in a separate method.
Merge remote-tracking branch 'upstream/master'