3705: generalize PullList module to BlockWorkList

Full description at https://arvados.org/issues/3705
Yeah, that's the proposal that I put up. Another good reason to reduce or remove this kinda-pseudocode.