BUG: Fixed a bug in DataFrame/Panel cache insertion and subsequent indexing GH4939
Merge pull request #4942 from jreback/index_cache

BUG: Fixed a bug in DataFrame/Panel cache insertion and subsequent indexing GH4939
BUG: Fix copy s.t. it always copies index/columns.

Only copies index/columns with `deep=True` on `BlockManager`. Plus some
tests...yay!

Change copy to make views of indices.

Requires changing groupby to check whether indices are identical, rather
than comparing with `is`. Plus add tests for name checks through
everything.

Add some views with data copying...

CLN: Change groupby to use 'is_' instead
ENH: enable deep copy for sparse Series/Panel
fixup reindex test on Series
CLN: PEP8 tests/test_index.py
PEP8 core/index
Fixup on tests/test_sparse test