`AbstractCache` exposes the ability to set a logger. Default behavior
automatically passes the logger reference down to the cache, unless a
specific cache instance was provided.
Refactoring to allow for alternative cache implementations. Includes
implementations for the default noop (i.e. un-cached) behavior and a
filesystem-based cache whose configuration is consistent with the
existing Mustache_Engine constructor.
Includes updated and new tests.