create sockets per IPM2 instance

If you create the sockets as file scoped variables, they will be reused by every instance of IPM2.

So if I do:

```javascript
var pm2Interface = require('pm2-interface');

var imp2a = pm2Interface({bind_host: 'localhost'});
var imp2b = pm2Interface({bind_host: 'some.remote.host'});
```

`imp2a` and `imp2b` actually share event and rpc sockets which is probably not what was intended.

The change I've made moves the socket creation into the IPM2 constructor so that in the above example both connections would have their own sockets.