Add stratified cross validators

* Change slightly how CV is handled by `osprey worker`: the `BaseCrossValidator` subclass is returned and then `__call__`ed with either `y` or `len(X)` depending on the value of `cv.stratified` (a class variable). CV is now set up after the dataset is loaded to allow access to `X` or `y`.
* Add support for `StratifiedKFold` and `StratifiedShuffleSplit` validators.
* Adjust defaults for all CV classes to match sklearn defaults.