Dropping top level in multiindex independently of key
I am developing some code that derives various pandas classes, and I have stumbled what seems to me like a bug. I do not have too much experience with pandas, so pardon me if this is obviously wrong.

In function `maybe_droplevels` from the `multiindex` file, lines [3878](https://github.com/pandas-dev/pandas/blob/15dff11b799f665b50e9078ae52dd820ac1bc678/pandas/core/indexes/multi.py#L3878) and [3884](https://github.com/pandas-dev/pandas/blob/15dff11b799f665b50e9078ae52dd820ac1bc678/pandas/core/indexes/multi.py#L3884) disregard the content of `key` and directly drop the top-most level. It has been like that for at least some years. I am not sure if this was by design in the beginning, to avoid issues, but after a brief look I cannot find the reason why it is would not possible to drop only the level where `key` is.

My code derives `MultiIndex`, and when I return a slice that shrinks the DataFrame size, line [3463](https://github.com/pandas-dev/pandas/blob/15dff11b799f665b50e9078ae52dd820ac1bc678/pandas/core/frame.py#L3463) wants to shrink the size of the index too.