did some refactoring - we now use a RedisPubSub class