added pub/sub wrapper package
added message queue to avoid an issue where a message could be consumed during a sub/unsub action