feat($compile): allow SVG and MathML templates via special `type` property

Previously, templates would always be assumed to be valid HTML nodes. In some
cases, it is desirable to use SVG or MathML or some other language.

For the time being, this change is only truly meaningful for SVG elements, as
MathML has very limited browser support. But in the future, who knows?

---

NOTE: It would be nice (and more extensible) to simply add a namespaceURI
option to the directive, but unfortunately this would require potentially
difficult changes to jqLite.

This approach seemed much simpler, and would be more directly useful to persons
wanting to use SVG content in a directive template, without a wrapping `<svg>`
element. Additionally, it's much easier to simply write "svg" than a full
namespace URI, so it's more approachable in this fashion as well.