IP-MATCH: Integer Programming for Large and Complex Matching Problems