GUI: Some changes.
Merge remote-tracking branch 'origin/master' into GUI
GUI: the view listens to the model
Merge remote-tracking branch 'origin/master' into GUI
GUI: Updated so the gui listens to the model and updates when it does