Let all dynamic examples run at 60 fps

This does a few things:

* Remove call to `canvas.update()` from `on_draw` in all examples. Use a timer instead.
* Gives `canvas.update()` an optional event arg (which is not used) so it can be used as an event handler, simplifying code that wants to call `update` via a timer.
* Improve measure_fps.

Todo:

* [x] If everyone agrees with the update of the `canvas.update()` method, use it in places where we now use awkward lambda. Otherwise change where I used it already.
* [x] Update use of timer to move `connect` and `start` in the initialize call.

Closes #229
This 1./60. shows up *a lot*. WDYT about having it be the default timer rate?

1. It's probably the most common use case anyway
2. It would shorten all of our example code a bit / DRY
3. Perhaps most importantly, if we eventually find some way of detecting the screen refresh rate, or allowing the user to set it for their personal system in a `config` setting or something, we can automatically use that everywhere instead of `1./60.`.

If you're busy, I can make this change after merging this PR.