Cache related files

Cache classes and unit tests