Fix IntegerArray pow for special cases
Split from #29964 

Only https://github.com/pandas-dev/pandas/commit/9e5a69c3a32aad746ef3df29e43df352f4551f4d is relevant. The rest is https://github.com/pandas-dev/pandas/pull/30183, but pushing this up now.