Import other algorithms for easy switching

Note: the fit is a lot slower than the direct algorithms.

The results are mostly the same, except for cases which
the Fit fails to flag as 'impossible' and return (nan, nan),
and the DirectAlgorithm by David does not match the new
algorithms.