ENH: union_categorical supports identical categories with ordered
- [x] related to #13410, #13524
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew not needed

`.append / concat` can handle ordered `Categorical` which has the identical categories. However, `union_categorical` raises `TypeError`. This PR allows `union_categorical` to handle the case.

**on current mastser**

```
s1 = pd.Series(pd.Categorical([1, 2, 3], ordered=True))
s2 = pd.Series(pd.Categorical([3, 2, 1], categories=[1, 2, 3], ordered=True))
s1.append(s2)

#0    1
#1    2
#2    3
#0    3
#1    2
#2    1
# dtype: category
# Categories (3, int64): [1 < 2 < 3]

pd.types.concat.union_categoricals([s1.values, s2.values])
# TypeError: Can only combine unordered Categoricals
```

CC: @janschulz, @chris-b1
