Make pd.read_hdf('data.h5') work when pandas object stored contained categorical columns
- [x] closes #13231 
- [x] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/13359?src=pr) is **84.23%**

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

``` diff
@@             master     #13359   diff @@
==========================================
  Files           138        138          
  Lines         50724      50736    +12   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits          42726      42737    +11   
- Misses         7998       7999     +1   
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last updated by [103f7d3...e7c8313](https://codecov.io/gh/pydata/pandas/compare/103f7d31e1b850e532ed85a4b53ef222d1271c54...e7c8313e611ca13024f31ce179a4758155047835)
 looks good. I think there is a failing case that needs to be tested.
 thanks @chrish42 
