Added Set method support to BlendedCache.
Added SetCacheLocation to know what layer should be set.
There is a IBlendedCacheSetter object that handles the actual setting.
Ensure the various caching layers are called depending on the SetCacheLocation flag.

--some small comment cleanup I saw on the way.

Conflicts:
	BlendedCache.Framework/BlendedCache.cs
	BlendedCache.Framework/DefaultProviderThings/DefaultBlendedCacheSetter.cs