Generic tree class.
Create tree node.
Node data.
Optional
Initial tree children.
Add children to current node.
Children nodes to append.
Pre-order traverse this tree.
Function to be called with traversing nodes.
Generic tree class.