Added ancestors and descendants to TreeNode

TreeNodes can now lazily report their descendants and ancestors using enumerators