gitk: Get rid of idrowranges and rowrangelist
Instead make the rowranges procedure compute its result by looking
in the rowidlist entries for the rows around the children of the id
and the id itself. This turns out not to take too long, and not having
to maintain idrowranges and rowrangelist speeds up the layout.
This also makes optimize_rows not use rowranges, since all it really
needed was a way to work out if one id is the first child of another,
so it can just look at the children list.
Signed-off-by: Paul Mackerras <paulus@samba.org>