Added several classes for the caching system