BUG: Support array interface
ENH: enable y to only implement the array interface

For instance y could be a pandas' dataframe
COSMIT: fix indentation
BUG: fix validation bug
ENH: support non-ndarray subclasses in supervised estimator
ENH: transformers work on non ndarray subclasses
DOC: more comments

Based on @amueller's review
COSMIT:

Address @amueller's comments
FIX broken test
Add related project to website.
FIX DBSCAN input validation
ENH don't convert dataframes in grid search and cross-validation