Tree improvements

fixes #141.

This has lots of improvements for the Tree views

Perf
+ start buffering batch changes to a view
+ start debouncing other things
+ stop re-rendering trees when toggling collapse state

Refactor:
+ Create activityTree class
+ move commands to ActivityNode for build and update

@ianmstewart i think you're going to like this patch :smile_cat: 
your work w/ trees is rock solid.
Hey, is this to allow child overriding of ui/events/modelEvents without clobbering?  If so, interesting move.  I have always done that on the child instead using _.defaults.  By the way, would a behavior make this cleaner?  (Just out of curiosity.)  Double btw, I realize this code is not part of the diff :p