refactor: extract methods for node start/end marker construction

Signed-off-by: Florian Thienel <florian@thienel.org>
refactor: extract method to draw a text tag

Signed-off-by: Florian Thienel <florian@thienel.org>
reset cursor to 0 when pressing the HOME key

Signed-off-by: Florian Thienel <florian@thienel.org>
move Cursor and ContentMap into BoxWidget

Signed-off-by: Florian Thienel <florian@thienel.org>
add creation of content boxes to the BoxFactory

Signed-off-by: Florian Thienel <florian@thienel.org>
compact visualization methods

Signed-off-by: Florian Thienel <florian@thienel.org>
extract class DepthFirstTraversal

Signed-off-by: Florian Thienel <florian@thienel.org>
improve toString for tracing

Signed-off-by: Florian Thienel <florian@thienel.org>
add support for positioning cursor by mouse click

Signed-off-by: Florian Thienel <florian@thienel.org>