Enable use of node creation logic without forcing the consumer to attach the node to the DOM

Reopens #24

This is that allows the consumer to create nodes in-memory but not in the DOM. I find `jasmine-fixture` to be really useful, but I also have plenty of tests to do where I'm passing around nodes that may not be attached (they came from the server, or were constructed by a template, etc).

**Now with less global namespace pollution, and tests**

This change passes old and new tests, and is backwards compatible.