constraints: formalize the MotionConstraint concept a bit.