Button - update to support wrappers for icon and text

Placeholder issue, follow up to core work in patternfly/patternfly#5944 and patternfly/patternfly#6245

Discussed with @tlabaj the docs/API change could be:

  • Children is always treated as the text. We'll wrap children in the text wrapper.
  • Icons are always passed via the icon prop. Any positioning continues to happen via iconPosition, though we may or may not need to apply a class for the position anymore.
  • ^ applies to all buttons, including plain.