The default here and in the rest of this PR should be `workers=1`, as in the other parallel SciPy functions. The rationale is that library code should be single-threaded by default so users can sensibly control things by themselves. For `-1` by default you easily get multiple levels of parallelism (which is very bad for performance), for example if the user uses `multiprocessing`.