- Firefox 57+ appears not to fire a change event when the `files` field is modified,
which prevented uploads from occuring. This commit triggers a change event manually
and doesn't impact the functioning of other browsers.
- Namespaced events were used improperly in existing code which resulted in "jank"
on Firefox. Namespaces shouldn't have been attached to events generated by the browser.
- The "drop" and "dragleave" handlers are now separate. This fixes a problem
on Firefox where the drop event wasn't reliably changing the state of the input
so it no longer glowed.