[WIP]: Sparse label_binarizer and OneVsRestClassifier

https://github.com/scikit-learn/scikit-learn/issues/2441

- [x] modify the function `sklearn.utils.multiclass.type_of_target` to recognise sparse binary matrix as a `'multilabel-indicator'` format.
- [x] modify the function `sklearn.utils.muticlass.unique_labels` to work with this new format.
- [x] modify the `label_binarize` function to return a sparse label indicator.
- [x] modify `OVR` to work with sparse output matrices. For instance by extracting a dense column of the sparse matrix and fit the classifier on it. Prediction would be made by creating the sparse matrix incrementally out of each fitted classifier.


- [ ] Write tests
- [x] Edit `_fit_binary` method to take in dense and sparse matrices.
- [x] Single label Multi-class broken.

- [ ] `import scipy.sparse as sp` instead of `from scipy.sparse import coo_matrix`