Rapid Design Space Exploration with Constraint Programming