Implement a LRU cache.