Support for 'animationstart' event

Thoughts:

* See #35 for the original idea.
* Maybe rename `animationstart` to `animate`, as we don't have an `animationend` right now
* This needs tests before merging