BUG: Join did not work correctly when one MultiIndex had only one level
- [x] closes #36909
- [x] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry

``droplevel`` for ``MultiIndex`` returns an ``Index`` when the resulting ``MultiIndex`` had only one level. But if the input had only one level and no level should be dropped, the return was a ``MultiIndex``. This did not seem consistent, so I changed it, that in this case an Index would be returned too. If this is not the desired behavior, we could fix the ``join`` problems after calling this functions.

If this is not desired, we should add a note to the docstring, that the return for ``droplevel`` is a MultiIndex, if no level is dropped.
