Change Node ID to support string and interger types; add tree constructor with another tree (deepcopy); add basic methods to measure the tree: size,depth,leaves,contains,is_parent; add deepcopy function to paste method; add parameter checking for several routines in Tree;