3705: generalize PullList module to BlockWorkList

Full description at https://arvados.org/issues/3705
Agreed, the only thing that blockworklist.Close() shuts down directly is the list manager. The manager closes the NextItem channel so that the workers _can_ shut down gracefully as they like.