Adding caching API. The API is registered as a module.
Adding cache.py