Improving Integer and Constraint Programming for Graeco-Latin Squares