Add basic class scaffolding.
Add methods for generating cache key.

The cache key is an md5 hash based on the current page view's permalink.
This commit adds small utility functions for generating the cache key.
It currently takes into account the protocol, host name, path, and query
string.

This key will likely be modified to include exceptions and cookie
values.