relatedly, would it make sense for this to extend InMemoryCache, and just add the failure-injecting code on top?