code: def get_tree(cls, parent=None):
          
          if parent:
              depth = parent.get_depth() + 1
              results = [parent]
          else:
              depth = 1
              results = []
          cls._get_tree_recursively(results, parent, depth)
          return results
docs: :returns: A list of nodes ordered as DFS, including the parent. If
                    no parent is given, the entire tree is returned.