[WIP] Frontend cache invalidation

This pull request adds support for automatically purging pages from a frontend cache (varnish, squid, etc) when a page is updated or deleted. It also provides a utils function to allow purging of pages in other situations (such as purging a listing page when an item is added/changed/deleted).
Shouldn't cache invalidation only happen when a published page is changed?