Trigger connection recovery when initiator is Library

This happens when we get an I/O exception of a kind, e.g. due to RabbitMQ
node becoming unreachable or abruptly shutting down.
Separate recovery exception event class
Doco