Refactor textrendering and add in rudimentary dot output support.
Change dot layout to be top to bottom, and include a warning when using Dot for lists rather than trees.