Fix for subscribe/unsubscribe and pushed message handling

In addition to scenarios mentioned in the issue I've opened, it is important to keep in mind that message/pmessage can arrive at any moment (including while expecting reply to a subscribe/unsubscribe command), so message and pmessage should be handled first. Unfortunately, while it is fairly easy to reproduce this behavior under some load, testing it can be trickier...