Emitting error event after hitting reconnect max_attempts or connect_timeout

Also documenting the "reconnecting" event

Adding "broken" event for when connection permanently goes down