3705: generalize PullList module to BlockWorkList

Full description at https://arvados.org/issues/3705
BlockWorkList seems like an overly-specific name for this code. What do you think about something like WorkQueue or ResettableWorkQueue?