ENH: Add duplicated/drop_duplicates to Index
Closes #4060.

```
idx = pd.Index([1, 2, 3, 4, 1, 2])
idx.duplicated()
# Index([False, False, False, False, True, True], dtype='bool')
idx.drop_duplicates()
# Int64Index([1, 2, 3, 4], dtype='int64')

idx.duplicated(take_last=True)
# Index([True, True, False, False, False, False], dtype='bool')
idx.drop_duplicates(take_last=True)
# Int64Index([3, 4, 1, 2], dtype='int64')
```

@jreback, @jorisvandenbossche Considering both comments and fixed.

Defining `update_inplace` in `IndexOpsMixin` results in `Series` to refer it because of inheritance order. Thus, functions which uses `update_inplace` must be overridden eventually.
https://github.com/pydata/pandas/blob/master/pandas/core/series.py#L77

So defined common logic in `IndexOpsMixin` and override in `Index` and `Series` each. As a result, `Index` no longer need `update_inplace` because it will not accept `inplace` keyword.
 Just as a usage question, what do we envisage as the 'recommended' way to drop duplicate indices from a DataFrame (where you now had to say the somewhat unintuitive `df.groupby(level=0).first()`)?:

```
df[~df.index.duplicated()]
```

or

```
df.reindex(df.index.drop_duplicates())
```

although these are even longer than the groupby ..
 unchanged, the first is best (this is for the Index to be compatible)
 @jorisvandenbossche 's point is #2825. Though I feel  `df[~df.index.duplicated()]` is simple enough.
 the doc string for `Series.duplicated/drop_duplicated` does not have `inplace`?

I would change this around. Why don't you just have `_duplicated/_drop_duplicates` in Base (w/o the inplace argument, and are private (no doc strings)).

Then in Index/Series put in the doc-strings (and inplace for Series)?
 No, `Series` has. I expect docstrings are rendered as expected.
![pandas index drop_duplicates pandas 0 14 1-201-g54d3e4d documentation 2014-08-15 21-40-19](https://cloud.githubusercontent.com/assets/1696302/3933177/edc4108c-2479-11e4-94b2-e57273d55fb2.png)
![pandas series drop_duplicates pandas 0 14 1-201-g54d3e4d documentation 2014-08-15 21-39-58](https://cloud.githubusercontent.com/assets/1696302/3933178/f0e6d524-2479-11e4-84a2-95b52c1fff9f.png)

Agreed to remove docstring from `IndexOpsMixin`, and I feel no need to make them private (little confusing).
 ok, that's fine then. ping hwne ready
 Thanks to confirm. Now green.
