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

@jorisvandenbossche 

cc @shoyer 
cc @immerrr

any addl thoughts on the PR? to summarize
- deprecating `+` and `-` for Index ops (recommening replacing by `.union()` and `.difference()`), to allow _some_ Indexes to have numeric ops (Int64/Float64 can do `*,/` now), `dti - dti` contemplated. This also promotes consistency with operations with scalars which are always numeric-like.
- replacing `.diff()` with `.difference()` (to avoid confusion with actuall `.diff()` methods in Series

No action on `|`,`&`,`^` (so its a bit inconsistent).
 Looks fine to me.
 ok, bombs away
 @jreback seems the changes in this PR in the indexing docs are gone lost in the PR which reorganised the indexing docs: https://github.com/pydata/pandas/commit/ee00dc7297b016b5e508f30c318b5c57a4c024e5, https://github.com/pydata/pandas/pull/8204
 you mean this? http://pandas-docs.github.io/pandas-docs-travis/whatsnew.html#whatsnew-0150-index-set-ops
 oh i c, in the indexing.rst docs themselves. ok fixing up now.
 @jorisvandenbossche #8485 should cover
