Calling mayReconnect one more time to allow reconnect_failed to be fired

As per @robbrit comment at https://github.com/LearnBoost/socket.io/issues/652#issuecomment-6250270, firing 'reconnecting' event and looping one more time over maybeReconnect will properly fire the 'reconnect_failed' event.

All the tests done locally show the patch works properly on client version 0.9.11.

Additionally, it will also fix https://github.com/LearnBoost/socket.io-client/issues/472 and possibly https://github.com/LearnBoost/socket.io-client/issues/311.