params parsing
These values are established by empiricism with tests (tradeoff: performance VS precision)
Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.
Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2.
istanbul ignore if
istanbul ignore next
Interpolate to provide an initial guess for t
istanbul ignore next
linear Because JavaScript number are imprecise, we should guarantee the extremes are right.
and cover the gaps