Adding a ResponseHandler interface expose WebPush event callbacks.

Motivation:
Currently there is no way to process the WebPush server responses and
notifications, part from logging them as is currently being done.
We need some way for client to handle the responses for requests and to
process notifications.

Modifications:
Added a ResponseHandler to allow for callbacks that will be called when
messages are recieved from the server.

Not really happy with this but will do for now.