LRUCache no longer auto-picks keys for data, and can take any type as key.

At least, any type that can be hashed for std::unordered_map.