B-Splines, other splines, and NURBS in Haskell.