Handle non-deserializable connect response

This problem has been seen sporadically in production but the
exact cause is not clear. Occasionally the client receives
a connect response that it cannot deserialize. This results
in an error and leaves the client in a zombie state where it
no longer attempted to reconnect.

With this change we catch errors and raise a ConnectionDropped
error. This is caught by the outer connection loop and the client
continues attempting to reconnect.
Merge pull request #95 from labisso/connect_deserialize

Handle non-deserializable connect response