@spicyj: Did this make sense? I feel like we can get a consistent change event happening without even using the `change` event at first. We simply listen to `keyDown` events, and on `setTimeout` see if the value has changed. The benefit of having a uniform process across all browsers, is that you won't get some `onValueChange` events being dispatched in some event loop iteration, and in other event loop iterations in other browsers - it will be predictable.