Add HalfSpace-ConvexImplicitSurface tracker

For contact, adds a ContactTracker for a generic convex, smooth, implicit surface hitting a half-space.
Resolves #232.