Working on caching
Starts #28