more cleanup
more tests
split out classes
move interface injection up a few levels
fix node removal
remove key, rename attr., fix rt ref,