asynchronous publisher and subscriber examples refactored to follow the StepDown rule