Hum, milbo,
i don't want to pollemic, but i have new problems in last VM release, because session value in Model to do lazy loading.
SO as this is really good to add some caching, you should provide a way to disable cache and store some Session values.
Eg When you return now from a product in category , you return to the Same page(pagination), but my customer will return to first page and not saved pagination. I think (but don't tested) that is the same case when you come back from cart or any view other then category, the pagination stay, if you go in same category again. This is good when you want it so. But for lazy loading the page is always first page ,so i have to overide all only because this session values.
So as new features is cool, and thank you for this, i think it where better if we can use old methods too so you don't have to overide or hack the code to remove new changes doing your shop working another way from one to other release.