Model::updateGeometry() has been returned as a side-effect of Model::simulate(), thereby simplifying the Model class API.  updateGeometry() again takes an optional bool as a second argument whose truth value tells the function whether or not to proceed past its side effects.