Update support for events.

FWIW, I'm working on a watchable api for the scheduler that could potentially be reused here. I hope to have a PR out later today.