+1 for dropping VersionedReplace, VersionedPut and GetCacheEntry commands. I think having a reference to the metadata makes sense.