CLN: Implement multiindex handling for get_op_result_name
- [x] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`

@jbrockmendel 

This would solve the inconsistency in ``get_op_result_name`` for MultiIndexes, but adds a bit more complexity here.
I think this would allow us to remove the now duplicated code in ``intersection``
Can we do this by overriding get_reconciled_name_object and not get_op_result_name?  id like to avoid the small-but-frequent additional overhead there pls merge master Done and Done LGTM ex @jreback comments also pls merge master looks good. is this user visible in any way? e.g you mention: `This would solve the inconsistency in get_op_result_name for MultiIndexes` No, we did use rename previously which avoided this. But now we are consistent between the intersection methods thanks @phofl 