TODO:  verify replace_with() with empty list is the same as $job->completed


policy is all on worker side

client really cheap

priority:  low number is higher priority.  0 is highest.