Cleaned up ZTreeNode to redefine the public 'parent' instead of creating a new private 'mutableParent'