REF: implement EA.pad_or_backfill
- [x] closes #53621 (Replace xxxx with the GitHub issue number)
- [x] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature
- [ ] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [x] Added [type annotations](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#type-hints) to new arguments/methods/functions.
- [x] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

Sits on top of #53989.

The deprecation is a little bit awkward.  If a 3rd party EA has implement fillna but not pad_or_backfill, we warn and call that.  DecimalArray tests that deprecation.

The "method" paths for our existing EA.fillna methods could be ripped out as they are no longer used.  I left them untouched for now.

In a follow-up, can de-duplicate Block.pad_or_backfill with EABlock.pad_or_backfill.
> /home/runner/work/pandas/pandas/pandas/core/arrays/base.py:docstring of pandas.core.arrays.base.ExtensionArray:119: WARNING: autosummary: stub file not found 'pandas.api.extensions.ExtensionArray.pad_or_backfill'. Check your autosummary_generate setting.

@mroeschke help?  i dont understand what this is asking for @MarcoGorelli any idea whats going on with the docbuild?  i have a premonition its going to be really obvious as soon as someone points it out to me My guess is that you need to add this new method to doc/source/reference/extensions.rst ? That solved it, thanks Thanks @jbrockmendel 