CLN: simplify MultiIndex._shallow_copy
``MultiIndex._shallow_copy``  doesnt pass on kwargs, unless ``values`` is passed also, but just silently drops the kwargs. This makes ``_shallow_copy`` currently a bit unreliable.

This PR fixes that problem by calling ``.copy`` directly and passing kwargs to ``copy``and not passing the call through ``.view``. Also, ``_shallow_copy`` doesn't call ``.view`` on other index types, so this PR makes ``MultiIndex._shallow_copy`` conform with other index types.
this looks ok. does this close any current issues?

does this have any user facing effects? No, there's no issue for this, as this is small & internal. For an upcoming PR I need to call ``mi._shallow_copy(names=...)``, so made a separate PR for this, instead of mixing it in the other PR.

This has no user-facing effects. > No, there's no issue for this, as this is small & internal. For an upcoming PR I need to call `mi._shallow_copy(names=...)`, so made a separate PR for this, instead of mixing it in the other PR.
> 
> This has no user-facing effects.

k thanks thanks @topper-123 