First writeable implementation.
TreePrinter: shorter path name printing