Fixes ovr in the binary classifier case

Fixes https://github.com/scikit-learn/scikit-learn/issues/3700. Also allows feature arrays (rather than just numpy arrays) in the multiclass case (already supported in the binary case), and adds a test for the number of probabilities returned from predict_proba in test_ovr_binary.
It's strange to me that this should be (Y, 1 - Y) not the other way around. In any case, this needs to be tested: confirm that there is a correspondence between the `predict_proba` and `predict` output.