NewWithIndent creates a tree printer like New, permitting customization of
the width of the outputted tree.
leftPad controls whether the tree lines are padded from the first character
of their parent.
rightPad controls whether children are separated from their edges by a space.
edgeLength controls how many characters wide each edge is.