spark-splitter: switch from passing in external event handlers to firing custom events

TBR @devoncarew

This is a more proper Polymer way of communicating changes to the client, which also indirectly fixes the warning reported by the linter about the onUpdate attribute's name.

Fixes #643.