Reconnects in open if it fails

Adds reconnection to cases where a connection has not been established to begin with (this was not the case before). Reconnection is started both in cases where the initial connection errors or when it is interrupted by a timeout. Is this the wanted behaviour; should the case where the connection errors try to reconnect?

Some tests to see that reconnections actually happen and don't when they shouldn't.

Also there are some slight changes to the manager constructor function so that it's nicer to use. Passing a uri is not necessary now when one wants to pass the options object while using the default uri.

A debug line was added for connection error, as well as an event for attempting to reconnect.