delegate batch assembly to the payload

BatchJob shouldn't be the one assembling the batch. The payload should
already be a batch.

This allows a BatchJob to work the same with a single payload or batch
payload. A batch payload can be any object that responds to :each.