title: When can the app model change?
body: <p>I'm wondering when the app model might change.</p>
  
  <p>Specifically, is code like this guaranteed to be correct, or not?</p>
  
  <p><code>onClick &lt;| UpdateModelVersionMessage (model.version + 1)</code></p>
  
  <p>That is, between rendering the UI component, and registering and dispatching the event, could something else update the model such that the <code>UpdateModelVersionMessage</code> value is out of date? Javascript's concurrency model makes me believe I'm safe. But is Elm doing or could Elm possibly do something like batching/reordering messages?</p>