Updated TODOs for this branch.
Remove potential multi-threaded race condition

If a trajectory is being computed by the background worker thread when
another is requested, the current thread will now be terminated before
the new one is created. This way a user will not be able to overload
their CPU, or cause one graph to override the other, by manically
pressing the 'Plot Trajectory' button! In addition to this, the
'Plot Trajectory' button is now temporarily replaced by a new
'Cancel Computation' button, to enable the user to cancel long-running
computations.
Fix bug with generatePNG()

The variable `graph` needs to be defined globally, in order for
generatePNG() to be be able to detect whether or not it has actually
been drawn.