ENH: xz compression in to_csv() resolves #11852
- [x] closes #11852
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

can do this on top of #12175 as that added compression inference and reorged the testing
 Updated docs to include reading, using PY3 / PY2 instead of except, will rebase when #12175 gets merged.
 ok #12175 was merged, pls rebase
 also note #12688 
 interesting this only appears in 2 locations (and not the 3rd). any idea?
 @jreback Rebased, will look into #12688 
 @jreback For now I will also add it to `parsers.py`
 @jreback Updated
 minor doc fix
 @jreback fixed typo
 ok, lgtm. ping when green.
 @jreback green
 @terfn thanks!

I refactored to remove some duplicate code, but looks really good!.
