added support for different caching backends such as redis

refs #6637

`CacheFile` => `Cache::getLazyCache`
`PersistentCache` => `Cache::getEagerCache`
`PluginAwareStaticCache|LanguageAwareStaticCache|StaticCache` => `Cache::getTransientCache`