Clean up events and define relationship to service workers

This relates to issues #33 and #18.

* Define event handlers `onpush` and `onpushregistrationlost` on `ServiceWorkerGlobalScope`
* Define `push` event using interface `PushEvent`
* Define the simple event `pushregistrationlost`
I can't find a good description to reference in the Service Worker spec. I filed this issue for it: https://github.com/slightlyoff/ServiceWorker/issues/501