MAINT: allow _additional_calls to return multiple models
MAINT: allow _additional_calls to return multiple models

Before, BaseIncrementalSearchCV assumed _additional_calls
returned one model and returned that to the user.

Now, BaseIncrementalSearchCV chooses the model with the highest
score returned by _additional_calls.

This matters if desired to do a random search, or if `max_iter` is hit.

dask/dask-ml,dask/dask-ml