move all tests files into one directory

add a redis pubsub singleton