clphs Constraint solving over finite domains. Inspired by clpfd and David Overton's implementation. Constraint Programing