undo/redo are now working cleanly and tested.
Added the ability for web-exposed functions to choose the starting point for which nodes are displayed (ie, only display what's changed)