topcat: rationalise progress reporting and interrupt checking

Now handle all progress logging and interruption checking when iterating
over TupleSequences within a DataStore wrapper (GuiDataStore).
This makes the code more uniform and less messy, and may deliver some
performance benefits - at least it's possible to tweak any changes in
the iteration loop in one place now.
topcat: add a control to turn on/off progress reporting in plots