Making reconnect counters more forgiving, ensuring disconnect signal is ...

...emitted on all disconnects.

@baileyqbb You might want to try this branch.