Fixes timezone drop when encoding it in msgpack
- [x] closes #25148
- [x] tests added / passed
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry

***After***

```python
In [1]: import numpy as np
   ...: import pandas as pd
   ...:
   ...: idx = pd.date_range(start='2018-12-02 14:50:00-07:00', end='2018-12-03 03:11:00-07:00', freq='1min')
   ...:
   ...:
   ...: df = pd.DataFrame(np.random.randn(len(idx), 1), index=idx, columns=['A'])

In [2]: df.index[0]
Out[2]: Timestamp('2018-12-02 14:50:00-0700', tz='pytz.FixedOffset(-420)', freq='T')

In [3]: df.to_msgpack('~/foo.msgpack')

In [4]: df = pd.read_msgpack('~/foo.msgpack')

In [5]: df.index[0]
Out[5]: Timestamp('2018-12-02 14:50:00-0700', tz='pytz.FixedOffset(-420)', freq='T')
```