Made find() non-virtual to make things fair
Cosmetic changes
Small changes
A version of TodoList with faster rebuilding

This version of TodoList uses a rebuild method that goes node by node
rather than one level at a time. This is more cache efficient and reduces
the time for add(x) by about 30%.

Eventually, this experiment will get pushed back into the master.
Starting a linear-space TodoList

Right now, all we've done is reverse the list indices so that that the
largest list is L[0] and the smallest is L[h].  This paves the way for
an implementation in which nodes have different-sized arrays.