Refactored to use new pubsub methods and features (especially context!)