code: public PlanNode findAtOrBelow( Traversal order,
                                     Type firstTypeToFind,
                                     Type... additionalTypesToFind ) {
          return findAtOrBelow(order, EnumSet.of(firstTypeToFind, additionalTypesToFind));
      }
docs: Find the first node with one of the specified types that are at or below this node.
  
  @param order the order to traverse; may not be null
  @param firstTypeToFind the first type of node to find; may not be null
  @param additionalTypesToFind the additional types of node to find; may not be null
  @return the first node that is at or below this node that has one of the supplied types; or null if there is no such node