Change model to be more state- and less event-focussed.

Still a bit sketchy, but this is what I imagine the whole refresh/renotify logic to look like. Let me know what you think about the general approach.