Now accepts an argument to specify the location of the cache. This is optional and by not passing it no cache will be used.