[MRG] Logistic Regression CV

Continuation of the work by @fabianp and @GaelVaroquaux 

TODO's

- [x] I think the some of the private functions in logistic.py can be simplified. In particular, it is my intuition that we could squash some of the functions _logistic* and _logistic_*_intercept without sacrificing a significant amount of performance

- [x] sparse matrix support (any help from the people who actually use sparse matrices would be great here)

- [x] implement multinomial logistic or raise a meaningful error for multiclass pointing to OvA, OvO meta-estimators

- [x] More tests for LogisticCV object (and some are failing)

- [x] Document tolerance and stopping criterions
well. I remembers similar stuff being discussed here, https://github.com/scikit-learn/scikit-learn/pull/2598#discussion-diff-8988967