Update template engine to know of templates in folders.

Template name is no longer basename - extension, it's path relative to view directory + basename - extension

This means that you can autoload views from within directories, rather than only views in the root folder.