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
Merge pull request #4698 from adgaudio/master

HDFStore.append_to_multiple doesn't write rows that are all np.nan