Implement the LRU cache and tweak the cache package