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.
Pretty sure you should be able to iterate the child nodes with a for loop without creating another array.