UI requirements
- Allow user to modify q range from main panel [DONE]
- Move list of shapes from top menu to central simulation panel
- Popup P(r) plot and update for each simulation [DONE]
- Allow user to choose whether he wants the simulation to be run automatically with each parameter change
  or whether he wants to hit 'simulate' himself when he's done.
- A shape should be highlighted when clicked


Refactor:
- simulation._refresh_3D_viewer should not access canvas directly
- simulation._simulate_Iq: the getMaxVolume should be a call to the VolumeCanvas object.
        # Since the VolumeCanvas doesn't currently have that functionality, and
        # since the simulation panel holds the list of graphical representations
        # for the shapes, we will take the information from there until VolumeCanvas 
        # is updated.
- In simulation.py: avoid interfacing directly with the canvas member of the plotPanel.
- using time.time in CalcThread might not work on OS X 