TODO

Finish Javadoc'ing the code

Add Help menu to the visualiser

Add a tutorial

Provide a plugin mechanism
. DONE make all? / the history views a plugin
. plugins should be able to choose whether to be inline (as standard view) or separate windows (as history)
. DONE if too many views, a View menu to show which ones you want loaded / to view would be useful. 
. Should this be persistent?
. being able to tear off / dock views (i.e. as tabbed windows)

DONE Add my name as author to code with generics

DONE getColumnClass

DONE use getClass().getResource() to get resources like icons and plugin code

Fix build process

DONE Add new plugin view (look at CLRProfiler for examples)
     (Used a simple text view)

Analyse the performance of GCspy for Rotor. Need a good example with a variety of data gathering methods)

utils.FileUtils.fileExists: what's wrong with File.exists()?

Check javadoc of overwritten methods. 
Note also that many frames have methods: DONE space, DONE event, DONE disconnect, 
tileSelected, tileDeselcted, redraw

DONE made GeneralInfoFrame, LegendFrame, SummaryFrame, TileManagerColorsFrame 
     and HistoryFrame implement DisconnectListener.
Why is this listener in vis rather than interpreter.client?
