Added some comments
Added cache adapters to support multiple caching providers
Implements dependency tags for caching objects and eviction based on the tags
Added Dependency Tags to CacheContext