Make PushEvent's data payload binary instead of just a string

This exposes binary data as a Body mixin from the Fetch spec,
as discussed on https://github.com/w3c/push-api/issues/83
This is really complicated, and would still allow people to use this as a generic converter, just a little bit less obvious.

var event = new PushEvent('PushEvent', 'foobarbaz');
event.data.blob(); // ...

Given that this is a very minor detail, and with very(!) low expected usage, can we simplify this take a string, adding other types if there's a demonstrable need? For now, I'd be concerned about the added complexity.