Element manager spike

So, moving away from the inheritance model, I came up with an `ElementManager`. It feels pretty good, and should be easy to use from JS as well as coffee. 

@nathansobo, would love a review + ideas. It's obviously a WIP as things will need to move around. Just trying to get a handle on what feels good for the general API.
We might want to make this a *bit* fancier in case they want to pass a string to extend a native tag. So you could pass `extend: 'div'` and the custom element would look like `<div is="my-element">`.