Cleaned up a little the Generic_constraints and Variables modules implementation. Updated the src/datatypes/data_constraints.ml* with new constraints code.