Modernizing Matt Gemmel's MGTemplateEngine