Introduce ZoomChanged message and view.zoom property

This is slightly more pythonic than the old getter/setter pair, and
_update_zoom was the only changelistener-based piece left in ingamegui
__init__.
Simplify