ttools: add example code for programmatic use of new STILTS plots

A new class ttools.example.SinePlot runs an animated live plot in a
window.  It comes with a couple of associated source files that give
two alternative ways to set the plot up.

All commented in what I hope is a didactic fasion.
ttools: add a histogram to the API plot example
ttools: rearrange some plot2 method arguments for consistency

Methods in PlotDisplay and Plot2Task have similar requirements and
are doing similar things, but their argument lists look unnecessarily
different.  Move things around for consistency.
ttools: rearrange plot example code

In particular introduce a new class PlotGenerator which makes it
clearer how to export plots to graphics output formats.
ttools: make it possible to interrogate plot component

Adjusted the API so that if you get a JComponent from Plot2Task it
is explicitly typed as a PlotDisplay, and PlotDisplay has some methods
on it to determine the current plot surface.  This means that you
can (for instance) programmatically examine a plot you created,
and which may have been interacted with by a user, to determine things
like its current field of view.