Question: Design and build a "least recently used" cach, which evicts the least recently used item. The cache should map from keys to values (allowing you to insert and retrieve a value associated with a particular key) and be intialized with a max size. When it is full, it should evict the least recently used item.