Update template name parsing to handle more cases

Currently the regex used for parsing the template name will not support a script file with a querystring, which is the case for people using frameworks with versioned or cached statics. This is a non-regex version that will handle a few different naming conventions as well as querystrings.

It will handle files without extensions. It will handle multiple periods in the file name - with the caveat that it will assume these files have an extension. ( There isn't a clean way to handle the other case ) It will also, of course, handle querystrings.

Examples:
"view.panel.hbs?v=123" = "view.panel"
"view.panel" = "view"
"view-panel" = "view-panel"