Introduce the cache interface