Caching

Optimizes json to use oj.
Adds in representer and action caching.
Handles individual resource caching, and paged collection.
Uses caching string rather than hash when possible for representers
uses memcached now for caching (configurable via env)
Separates out into concerns much of base functionality of controllers and representers.