preOrder
Returns this subtree's nodes in pre-order (the receiver first, then each child subtree in order). Implemented iteratively, so it is safe on arbitrarily deep trees.
Return
the nodes of this subtree in pre-order, starting with the receiver.