code: public List depthFirst() {
          List answer = new NodeList();
          answer.add(this);
          answer.addAll(depthFirstRest());
          return answer;
      }
docs: Provides a collection of all the nodes in the tree
  using a depth first traversal.
  
  @return the list of (depth-first) ordered nodes