Fixed one rendering issue with multi-level merge

Children of a node are only considered if they don't have a younger
(i.e. further from root) parent as well. That is, only the youngest
parent of a child is responsible for allocating space for and
rendering that child.
Crude arrows are now drawn between commits

Arrows have no head (and thus no apparent directionality), and attach
to the top left corner of each node.