Pass timeout for pub() down to channel

Previously regardless of timeout a pub job would take 60s (default for channel) to timeout.

I noticed this because after an Mworker dying its possible to stall the reactor for 60s (if the job went to that MWorker)