ENH: add sort_categories argument to union_categoricals
- needed for #13406, follow-up to #13763
- [ ] tests added / passed
- [ ] passes `git diff upstream/master | flake8 --diff`
- [ ] whatsnew entry

cc: @janschulz, @sinhrks 

## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/13846?src=pr) is 85.28% (diff: 100%)

> Merging [#13846](https://codecov.io/gh/pydata/pandas/pull/13846?src=pr) into [master](https://codecov.io/gh/pydata/pandas/branch/master?src=pr) will increase coverage by **0.03%**

``` diff
@@             master     #13846   diff @@
==========================================
  Files           140        139     -1   
  Lines         50455      50020   -435   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
- Hits          43014      42659   -355   
+ Misses         7441       7361    -80   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last update [59f2557...3a710f0](https://codecov.io/gh/pydata/pandas/compare/59f25575f42e19f066dc3cd2245983071e2d7813...3a710f082fd2e5f94866418eb624d3e3ae391791?src=pr)
 can you add this issue to the whatsnew (just add on to same line where `union_categoricals` is)
 lgtm. @sinhrks pls have a look.
 lgtm. pls fix the lint issue:)
 @sinhrks - updated, thanks!
 thanks!
