rewrote code and made light weight. No longer needs treelib
rewrote code and made light weight. No longer needs treelib