THIS IS THE CORRECT PULL REQUEST for eio 0.4.3

I was able to get the chat working with the changes I did, the new engine.io added these lines: 

```javascript
module.exports = function() {
  return exports.attach.apply(this, arguments);
};

module.exports.__proto__ = exports;
```

which will not allow to overwrite the exposed modules like engine.Socket & engine.Server, so I changed the code for it to work in engine.oil.js by adding these lines:

```javascript
engine.__proto__.Server = exports.Server;
engine.__proto__.Socket = exports.Socket;
```

This took care of that but the test is still not passing, I think its because the first request from the client side is failing, then it reconnects and all work, but of course this will make the test fail. I think it's something on the client end that might need to change, I will come back to it later. 

Can you please check my changes and also see if you have any thoughts on the client error and failing tests.

Best,

JB