Constraint Modeling for Curriculum Planning and Validation