Update when.js to 2.x, dropping 1.x
Adapters for DOM events

Introducing `inboundDOMAdapter` and `outboundDOMAdapter`. These adapters
are able to listen for and fire (respectively) DOM events. For the
outboundDOMAdapter, the message payload must already be an initialized
DOM event that is ready to be dispatched.

Issue: #23