TreeTable lazily creates rows.  More comments.

Lazy row creation is because we might end up using the treetable
viewer for viewing graphs with loops.

Added more documentation + comments.