minor cache changes

expiration timout moved to config and changed to 2 hours
tests are now runnable using `npm test`