finished implementing the cache class and added a test script