GUI: Updated so the gui listens to the model and updates when it does