API/BUG: a column multi-index will be recreated properly (GH4710)

API: raise on trying to use a multi-index with data_columns on the same axis
Merge pull request #4716 from jreback/hdf_column_mi

API/BUG: a column multi-index will be recreated properly (GH4710)
DOC: Updates to CONTRIBUTING.md
ENH: Better rename/set_names handling for Index

* MultiIndex now responds correctly to ``rename`` (synonym for
  ``set_names``)
* ``set_names`` checks that input is list like.
* Cleaner error message for immutable ops.
* Added in previously missing tests for MultiIndex immutable metadata.
* Altered ``is_list_like`` to check for binary_types as well.
Merge pull request #4718 from jtratner/multiindex-rename

ENH: Better rename/set_names handling for Index
DOC: small clarification in DataFrame docstring
Merge pull request #4723 from jorisvandenbossche/patch-1

DOC: small clarification in DataFrame docstring
CLN: Remove unused and undocumented kind keyword from read_excel

Pops kwarg and warns if you pass it (rather than passing on)
Merge pull request #4719 from jtratner/contributing-update

DOC: Updates to CONTRIBUTING.md
BUG: Fix DataFrame.from_records w/ normal ndarray.

Previously, was causing a TypeError about None not being iterable when
arr.dtype.names was None. Now goes to 'last ditch' parsing instead.
Merge pull request #4713 from jtratner/remove-kind-parameter-read-excel

CLN: Remove unused and undocumented kind keyword from read_excel
Merge pull request #4727 from jtratner/fix-from-records-unstructured-ndarray

BUG: Fix DataFrame.from_records w/ normal ndarray.
CLN:Better exceptions in common, io/excel & format

* more changes to bare exceptions
* fixup _mut_exclusive to be more expressive
* change interpolate_2d and _maybe_upcast_putmask to assertion errors
  (with pragmas) Potentially need to check whether these are actually
  unreachable in normal code...
* CLN: Add coverage pragmas to already guarded asserts in CSVFormatter
* CLN: io/excel Exceptions - small changes (mostly pragmas and asserts)
Merge pull request #4721 from jtratner/change-bare-exceptions-pt-2

CLN: Improve Exceptions in core/common, io/excel and core/format
BUG: (GH4726) bug in getting a cross-sectional using iloc/loc with a duplicate items index
Merge pull request #4729 from jreback/dups_iloc

BUG: (GH4726) bug in getting a cross-sectional using iloc/loc with a duplicate items index
BUG: HDFStore.append_to_multiple - ensures rows are synchronized before writing

adds dropna kwarg + docstring + tests + documentation + release note

python3 compatible