ISPN-3803 Stale locks during state transfer in non-tx caches

Clean up SingleKeyNonTxInvocationContext and allow the key to be
locked/unlocked independently of whether the entry was looked-up or not.