BUG: Panel.fillna with method='ffill' ignores the axis parameter (GH8251)

Adds support for method-based fillna along the specified axis of a Panel. Also adds some additional validation when calling fillna on DataFrame.