A Generic Global Constraint based on MDDs