Moved the Constraint struct to its own file.