use a try block in _expand_user instead of a typing condition
Noticed that `_expand_user`'s docstrings stated that expansion was performed "if possible", while the actual implementation was only applying expansion to str objects.
With a try block it should work with str, os.Pathlike and bytes objects (and everything else supported by `os.path.expanduser` in the future).
I except this change may be undesirable since it will force the output type to `str`. In this case I can replace this with a docstring update.
I'll complete the checklist with tests and whatsnew entry if the change is deemed desirable.

- [x] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [ ] whatsnew entry

@arw2019 thanks, will do!
I gave up on this when I couldn't figure out how to make mypy happy with the change, any piece of advice here ?
 > @arw2019 thanks, will do!
> I gave up on this when I couldn't figure out how to make mypy happy with the change, any piece of advice here ?

Hmmm it seems like there are a ton of CI failures rn. Can you rebase against master and see which problems persist > Can you rebase against master and see which problems persist here ?

Done !
I note the logic block I'm touching has been updated on master since I opened this, but I still think a try-except pattern is probably more robust than what's already there. I'll be back to add tests to this :) Think I fixed the branch now ! > Think I fixed the branch now !

Ok, looping in some of the core team to see if there's appetite for this change

@simonjayhawkins @jreback @mroeschke 
 Hello @neutrinoceros! Thanks for updating this PR. We checked the lines you've touched for [PEP 8](https://www.python.org/dev/peps/pep-0008) issues, and found:





There are currently no PEP 8 issues detected in this Pull Request. Cheers! :beers: 

##### Comment last updated at 2020-09-18 12:27:33 UTC I've now added tests to check for the new behaviour. The new tests fail on master and pass on this branch. @neutrinoceros Is this still active? Can you merge master to fix conflicts if so? Hi ! Yes I am still willing to go through with this. I just rebased in a pretty agressive way, maybe I'll need to do some back pedalling. I see the parts I changed in this PR have seen considerable churn since I originally read the code so maybe the added value is gone now.  Ok I must admit I'm having a hard time trying to put the pieces back together and I am not sure this is worth it.
I want thanks @jreback for taking the time to review this, and everyone involved in the discussion, but I now think the easiest way to fix this would be to just start fresh. Maybe I'll reissue this later, but I don't wish to clutter the issue tracker.