Fix race condition reading/writing cache entries

We added the KeyedOperationQueue but methods like SafeOpenFileAsync open
a FileStream immediately. I simply made it a Func so it only happens
when it's time to queue an operation.

Also removed the InvalidateAllRequests call which happens to run
immediately as well and caused deadlocking.
Merge pull request #33 from github/disk-access-race-condition-fix

Fix race condition reading/writing cache entries