Updating CachePlugin to use a Vary based storage
* You can now purge all responses for a given URL
* Updating CacheStorageInterface to handle hashing and purging
* Removed CacheKeyProviders. This is now handled by a CacheStorageInterface. A custom storage can be created for custom caching and hashing needs.
* Adding an easier way to create CacheAdapters
* Deprecating CacheAdapterFactory::factory()
* Closes #252
Adding shouldRevalidate to RevalidationInterface
Not calling getParams() over and over
Adding cache.override_ttl to DefaultCacheStorage
Adding cache.key_filter to DefaultCacheStorage to add the ability to remove cache-busting query string variables from a request URL based cache key
Only cloning the request URL if a key_filter is specified
Adding the ability to automatically purge cached resources when non-idempotent methods are issued through the plugin