Add `batch` method to `Dataset` class
Looks good to me ! :)

you might want to add the `map` num_proc argument as well, for people who want to make it run faster Thanks for the feedback @lhoestq! The last commits include:
- Adding the `num_proc` parameter to `batch`
- Adding tests similar to the one done for `IterableDataset.batch()`
- Updated the documentation -> I think they are actually misplaced in the `Stream` page. But could not find a better place atm. Where would you put this documentation?

WDYT?
This PR introduces a new `batch` method to the `Dataset` class, aligning its functionality with the `IterableDataset.batch()` method (implemented in #7054). The implementation uses as well the existing `map` method for efficient batching of examples.

Key changes:
- Add `batch` method to `Dataset` class in `arrow_dataset.py`
- Utilize `map` method for batching

Closes #7063

Once the approach is approved, i will create the tests and update the documentation.