Actual caching stuff that is split out
Merge branch 'master' into caching
Ensuring indexes for cache.
Merge pull request #71 from trainingwheels/caching

Caching