BUG/API: Index.equals should check input class?
#### Code Sample, a copy-pastable example if possible

Decide the behavior if non `Index` with same values is passed. Currently, there is incompatibility between dtypes. 

```
pd.Index([1], dtype=object).equals(pd.Series([1], dtype=object))
# False

pd.Index([1]).equals(pd.Series([1]))
# True
```
#### output of `pd.show_versions()`

on current master
