API: raise on setops for + and - for Indexes (GH8226)

closes #8226 

- ToDo
  - [x] currently a raise ``TypeError`` (need a better message), possibly could deprecate and just warn
  - [x]  API example

Combining indexes via ``+`` now requires ``.union()``
Diffing indexes via ``-`` now requires ``.diff()``

These make the Indexes use setops (``&``,``|``,``^``) ONLY
numeric ops will work on appropriate Index ONLY (see #8184) (e.g. ``DatetimeIndex`` +/- ``Timedelta`` or ``TimedeltaIndex`` +/- ``TImedeltaIndex``)
Also ``Int64/Float64Index`` would gain ability to ``+/-`` as well 

This will promote consistency that ``+`` means add (and not union), and ``-`` means subtract (and not difference), which IIRC has come up in a few issues
It is not related to this PR specifically, but I think right-hand-side summand can be just `other.index.difference(self.columns)`