HDFStore performance issue of .select_as_multiple
```python
def init_and_store(sh_0, sh_1):
    'Init DataFrame and store it using HDFStore into 2 parts'
    
    df = pd.DataFrame(np.random.rand(sh_0, sh_1))
    cols1 = list(df.columns[:sh_1//2])
    cols2 = list(df.columns[sh_1//2:])
    with pd.HDFStore('test.h5') as store:
        store.put('df1', df[cols1], 't')
        store.put('df2', df[cols2], 't')
    print ('DataFrame shape is', df.shape)
    
def get_select():
    'Retrieve stored df with .select method' 
    
    start = pd.Timestamp.now()
    with pd.HDFStore('test.h5') as store:
        df1 = store.select('df1')
        df2 = store.select('df2')
        out = pd.concat([df1, df2], axis=1)
    print ('SLCT: Select done in %5.2f seconds. Out shape is'% 
           (pd.Timestamp.now()-start).total_seconds(), out.shape)

def get_select_as_multiple():
    'Retrieve stored df with .select_as_multiple method' 
    
    start = pd.Timestamp.now()
    with pd.HDFStore('test.h5') as store:
        out = store.select_as_multiple(['df1', 'df2'])
    print ('MULT: Select done in %5.2f seconds. Out shape is'% 
           (pd.Timestamp.now()-start).total_seconds(), out.shape)

def testing(sh_0, sh_1):
    'Compare time of .select and .select_as_multiple by sh_0, sh_1'
    
    init_and_store(sh_0, sh_1)
    get_select()
    get_select_as_multiple()
    print()
```
Now some tests:
```python
for sh_1 in [4, 8, 24]:
    testing(10**6, sh_1)
```
```python
DataFrame shape is (1000000, 4)
SLCT: Select done in  0.07 seconds. Out shape is (1000000, 4)
MULT: Select done in 25.20 seconds. Out shape is (1000000, 4)

DataFrame shape is (1000000, 8)
SLCT: Select done in  0.10 seconds. Out shape is (1000000, 8)
MULT: Select done in 14.81 seconds. Out shape is (1000000, 8)

DataFrame shape is (1000000, 24)
SLCT: Select done in  0.37 seconds. Out shape is (1000000, 24)
MULT: Select done in  6.45 seconds. Out shape is (1000000, 24)
```
So problems:
1. `.select_as_multiple` is _much_ slower comparatively to plain `.select`.  
- Expected - at least nearly same performance (because in opposite case one may use only `.select` with some `.concat` overhead).
2. Time of `.select_as_multiple` _decreasing_ in case of increasing number of columns (but still far slower than `.select`). 
- Expected is also increasing time of execution, because we increase our data size (up to 6 times).

<details>

INSTALLED VERSIONS
------------------
commit: None
python: 3.7.3.final.0
python-bits: 64
OS: Linux
OS-release: 5.0.0-16-generic
machine: x86_64
processor: x86_64
byteorder: little
LC_ALL: None
LANG: en_US.UTF-8
LOCALE: en_US.UTF-8

pandas: 0.24.2
pytest: 4.5.0
pip: 19.1.1
setuptools: 41.0.1
Cython: 0.29.7
numpy: 1.16.4
scipy: 1.2.1
pyarrow: None
xarray: 0.12.1
IPython: 7.2.0
sphinx: None
patsy: None
dateutil: 2.8.0
pytz: 2019.1
blosc: None
bottleneck: None
tables: 3.5.1
numexpr: 2.6.9
feather: None
matplotlib: 3.0.3
openpyxl: None
xlrd: None
xlwt: None
xlsxwriter: None
lxml.etree: None
bs4: None
html5lib: None
sqlalchemy: None
pymysql: None
psycopg2: None
jinja2: 2.10.1
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: None
gcsfs: None

</details>
