Fix connect timeout emitting error after the socket emitted error earlier
Add Failover and Messaging