Previously, if we didn't find a key, we'd empty the entire cache, making it essentially a single-key cache. We skip clearing now, although this does mean we won't GC expired entries (not a problem for tests, though)
Makes accesses simpler and reduces the number of dictionaries to one, in an effort to remove race conditions