GH24241 make Categorical.map transform nans
- [ ] closes #24241
- [X] tests added / passed
- [X] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [X] whatsnew entry

Alters `Categorical.map` so that the mapper function is also applied to NaN values. The mentioned bug report brings up the example of calling `apply(pd.isna)` on a categorical series, arguing that the values and dtype of the returned list should be consistent with non-categorical series. This PR makes the values consistent. The discrepancies in dtypes are present in categorical series without NaN's and consistent with documentation.