Use an atomic pop/push

BRPOPLPUSH ensures we can't lose the job in flight!
Robust Redis dequeue implemented & tested

I've had to disable the API tests in the suite, as they are flickering :-(