Ensure that there are no subscribers if there is no Redis connection

I experienced issues if my Redis server was restarted: the list of subscribers didn't change while there was no subscription to a channel in Redis.

By resetting the subscribers if there is no connection we ensure that there will be a subscription to a channel in Redis (rather than piling up subscribers that will never receive a message).

(Not all tests were passing when I ran the tests before I applied this so I don't think this will break anything)
Yes you are absolutely right, this was more of a quick fix (before I applied this to my fork it stopped responding after the server had been running for a while, but with this it doesn't).

I would be more than happy to throw some ideas around.