Plotting: don't change visibility of xaxis labels and ticklabels if passing in a axis
This does two things:
- fix for changing the wrong xlabels/xticklabels if a gridspec is used and the ax is passed in (not sure about using subplot without gridspec)
- changes the default behaviour for sharex if an axis is passed in: before the visibility changes were applied per default, now they are only applied if explicitly requested via `sharex=True`

Closes: #9737

Ok, seems that there is a place where the plotting code is tested... will redo...
 Ok, fix incoming... rebasing this will be interesting :-(
 ok, updated the code and the tests... Let's see...
 Updated docstrings and fixed whatsnew
 Thanks @JanSchulz. I agree that a user passing in an `ax` should mean they handle more things with the axes labels and we don't try to mess with that.

@sinhrks  look good to you?
 Squashed and fixed the above comments
 @JanSchulz @TomAugspurger Looks great!
 Ok, thanks all.
