Add cache.py