Fix define() namespace race condition by adding an option to SocketIO co...

...nstructor

Since 0.4 the option to define a namespace is no longer available in the SocketIO constructor. It is possible that we receive a response from server right after we create SocketIO(...) but before calling define().

Maybe there was a reason to remove this option but I think it's critical in the case that quick responses are lost if define() is slow.