Behavior fix.

Raised error event after the messages listener has completed to allow
setting the listener event and not cause a deadlock if attempting to
cleanup the connection during the event handler.

Re-throw exception if the session fails with a connection aborted
exception.

Ignore all exceptions thrown during a disconnect for a connection
aborted exception.