Pubsub into master

working on master