ENH: nullables use Kleene logic for any/all reductions
- [x] xref #41967
- [x] tests added / passed
- [x] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
- [x] whatsnew entry

This gives consistency for nullable dtype treatment across `.any/.all` and the groupby versions which already used Kleene logic. Diff looks big, but this is just moving `BooleanArray.any` and `BooleanArray.all` to `BaseMaskedArray`
This pull request is stale because it has been open for thirty days with no activity. Please update or respond to this comment if you're still interested in working on this. lgtm. @jorisvandenbossche if you can give a quick glance. thanks @mzeitlin11  Thanks @mzeitlin11 !