PERF: optimize insert_columns
BUG: fix 1xN mask on 1xN frame
TST: use DataFrame in the test
Merge pull request #4075 from jreback/insert_col_perf

PERF: optimize insert_columns
BUG: fix item cache invalidation bug in #3970 caused by is_mixed_type silently consolidating (hurf). also fix stable sorting bug presenting on my machine
Merge branch 'fix-consolidate-cache-invalidation-gh3970' of https://github.com/wesm/pandas into wesm-fix-consolidate-cache-invalidation-gh3970
CLN: have _consolidate_inplace invalidate the cache when needed
Merge pull request #4073 from cpcloud/internals-mask-edge-case

BUG: fix 1xN mask on 1xN frame
TST/BUG: fix 2to3 import rewrite of import pickle

In pandas.io.pickle the following statement will not allow python to import
anything due to the following rewrite by 2to3

import pickle -> from . import pickle

This make the import try to import itself ad infinitum and thus fails.
TST: make tox block when running in parallel
Merge pull request #4063 from cpcloud/tox-pkl-import-fix

TST/BUG: fix 2to3 import rewrite of import pickle
CLN: clean up data.py
Merge pull request #4002 from cpcloud/data-dot-py-cleanup

CLN: clean up data.py
ENH: Add ``layout`` keyword to DataFrame.hist() for customizable format

GH4050
Add release notes for new ``layout`` keyword - GH4050
Merge pull request #4031 from danbirken/add_layout_to_frame_histogram

Add layout keyword to dataframe.hist()
TST: more data.py cleanup
Merge pull request #4085 from cpcloud/data-dot-py-cleanup

ENH: really really really fix the failing data.py tests
BUG: pass sharex and sharey in grouped_hist
Merge pull request #4091 from cpcloud/fix-share-params-grouped-hist

BUG: pass sharex and sharey in grouped_hist