Added caching to public interfaces
Removed extra caching bits

Moved to using a page-cache for the public pages. That may cause issues
down the line, but's simple and effective and avoids having to do a lot
of complex caching.