move ndarray-returning functions to EA mixin classes
Orthogonal to other EAMixin PRs.

The methods this moves are unchanged.  Docstrings changed e.g. "DatetimeIndex" to "Datetime Array/Index".  I'm open to suggestions for better wording.

The error message in `PeriodArrayMixin._maybe_convert_timedelta` is changed to use `type(self).__name__` instead of hardcoding `PeriodIndex`.  Ditto the warning issued by `PeriodArrayMixin.freq.setter`.