IE8 fix mostly. Making `event.data` to JSON object and parsing it later, and send in a second argument to event handler that is the data since `event.data` looks like it only can store strings. Updated tests.