Added connection-level recovery.  We might move this up into the driver
base class, but for now it works.  (Tested with real PortAgent.)