hull: add (beginnings of) convex hull utility