BUG: HDFStore.append with encoded string itemsize
Closes https://github.com/pydata/pandas/issues/11234

Failure came when the maximum length of the unencoded string
was smaller than the maximum encoded length.

Need to run a perf check still. We end up having to call `_convert_string_array` twice, once before we know the min_itemsize, and a second time just before appending once we do know the min itemsize.
