CLN: remove unnecessary check `needs_i8_conversion` if Index subclass does not support `any` or `all`
xref #54566

removed unnecessary check needs_i8_conversion if Index subclass does not support any or all. 
thank you @WillAyd , I combined these two branches and reduced the message checks as you suggested. 

I think if we change the error message in `def _reduce`
https://github.com/pandas-dev/pandas/blob/4241ba5e1eb5b12adaff4e98df9ddad65ff94ddb/pandas/core/arrays/base.py#L1898-L1901
to
```
f"'{type(self).__name__}' with dtype {self.dtype} "
f"does not support operation: '{name}'"
```
we can reduce the amount of branching in tests. Think that's a good idea?  Thanks @natmokval 