[#33770] bug fix to prevent ExtensionArrays from crashing Series.__repr__()
- [X] closes #33770
- [X] tests added / passed
- [X] passes `black pandas`
- [X] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [X] whatsnew entry

This pull request fixes a bug in `GenericArrayFormatter` that caused a crash when rendering arrays of arrays. This problem causes `Series.__repr__()` to fail with certain extension types; see #33770 for more information.

The root cause is this line:
``` python
1231       is_float_type = lib.map_infer(vals, is_float) & notna(vals)
```
The call to `notna()` here returns a 2D array if `vals` is a 2D array, while `lib.map_infer(vals, is_float)` returns a 1D array if `vals` is a 2D array.

In addition to fixing that line, this PR also adds tests for the issue.