cap number of records in watcher

In order to prevent Python from allocating a potentially infinite
number of records, JES 4.3 implemented a cap on the number of records.
I hadn't reimplemented this yet. (Fortunately I hadn't written any
infinite loops yet, because that would have undoubtedly killed my
laptop.)

Now, a collections.deque is used to store the records, and once the
record limit is hit, records are popped from the left before appending
the new one. The number of records are reported to the table listener,
which uses it to add a message at the beginning, indicating that
records were removed.
use AutoScrollPane for command window

I realized that the debugger's auto-scrolling code would probably fix
our scrolling problems with the command window, so I moved it out into
the components package and wrapped the command window text pane in one.
And it worked!