Root node alters everything
Moved more general purposse code to Lib
Merge branch 'root-node' into dev