Fixes a synchronization issue in @unconfirmed_set

Fixes #206
Port more connection recovery tests from March Hare

References #205.

I have no idea why GitHub decided it is
by Jenkins-Priam, the author is Michael Klishin.
Preserve channel id allocator after recovery
Don't run recovery tests on CI until we make them close individual connections
Consumer recovery test, references #205