Removed `data` event and do parsing in transport.
Removed `data` event and do parsing in transport.

Unfortunately, it makes our API less clean to depend on specific
parsing done by the Transport when clearly it doesnt belong there.

The problem is that XHR polling *needs* specific messages to compensate
for lack of features such as the ability to signal a connection close.

Since we're already doing peaking of message types in the polling transport,
we want to avoid the performance penalty of double parsing at the polling
level and later at the Engine level, and we sacrifice a little bit of
API purity.

jskrzypek/engine.io-client,juancarloscancela/engine.io-client,socketio/engine.io-client,nkzawa/engine.io-client,juancancela/engine.io-client,hellpf/engine.io-client,vedmalex/engine.io-client,enounca/engine.io-client,gsklee/engine.io-client,julianduque/engine.io-client,socketio/engine.io-client,AnyPresence/engine.io-client,lwahonen/engine.io-client,socketio/engine.io-client,SpainTrain/engine.io-client,Automattic/engine.io-client,BernhardRode/engine.io-client,sanemat/engine.io-client