Added timeout non-zero verification - fixes #776

The pubsub listener was making the `bstop` call wait forever, because it was never listening in the first place: the 0 second `Duration` timeout was being triggered, rather than being considered as a "no timeout" value.
Do you think that this is performance relevant? Timer creation is usually nothing more than assigning a few bytes of memory and incrementing a counter (plus some modulus calculation in the hash map).