Fixing handlebars template cache bug

The template cache currently caches by filename alone, which breaks when
you organize templates according to subdirectory. This adds the relative
path to the filename as part of the template cache key.