ENH: return RangeIndex from difference, symmetric_difference
- [x] closes #12034
- [x] tests added / passed
- [x] passes `black pandas`
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [x] whatsnew entry

@iamlemec can you take a look and tell me what needs to be done here to be consistent with what you're doing in #36413? > @iamlemec can you take a look and tell me what needs to be done here to be consistent with what you're doing in #36413?

I think the most consistent way here would be to use `_wrap_setop_result` on the final return statement and `_get_reconciled_name_object` on the quick return statements up top. I actually didn't really touch `difference` and `symmetric_difference` in #36413, but it would make sense that they get a similar treatment.

My only concern regarding `difference` is that maybe since it's not a symmetric operation, it's naming rule should be left-biased. Like, if you're just dropping a few nameless elements, should that clobber the original name? added name checks to tests i guess this is technically a change, can you add a note; ping on green. ping