Replace NodeManager singleton with NodeRoot non-singleton.
Require all Datums to have a Node as their parent
Update tests so that they compile

though they don't yet run.
Code cleanup
Add dummy nodes in appropriate places
Fix subtle bug in recursive datum destruction
Support the DUMMY node type