BUG: fix Panel.fillna() ignoring axis parameter

This fixes #8251. It may need some more comprehensive tests but before I go too much farther I want to make sure the axis numbering scheme makes sense . The default behavior of `fillna` is to fill along `axis=0`. In the case of a DataFrame this fills along the columns. However, in the case of a Panel, filling along `axis=0` means you're filling along items. I'm not sure if that's the behavior that most users would think is the default. You might note that I also removed the references to what the behavior of each axis value is in the docstring since it gets a bit arbitrary when you consider both DataFrames and Panels.
don't add these methods ``_get_cats/_restore_cats`` they are not germane to anything but this method. just do an if else