Merge multi-index with a multi-index
#6360

Allow the merging of multi-indexed objects with different number of levels.

During tests I receive the following error: pandas/pandas/core/internals.py:4800: ComplexWarning: Casting complex values to real discards the imaginary part
you only need 1 PR if u have changes just push to the same one  Sorry Jeff, I'm just not very experienced with GIT. Thanks for the tip this needs quite a bit more testing. Would need to exercise all of the ``how`` cases, empty  levels, and error conditions (mismatched) levels. Extra tests have been added. 
The case of joining between levels that do not result in unique index raises error @harisbal I see you are pushing this, but you need to resolve the conflicts. This PR is a mess. I'll read the docs more carefully and create a new clean PR. Apologies about all the trouble I've caused