fix(compiler): allow identifiers with `-` in the template bindings as keys.
feat(viewport): add initial integration test for template directives