Add client-side configuration of batch size.

Per-request configuration can determine how results are batched back to the requesting client.
Merge remote-tracking branch 'origin/master'