1. An object matching system comprising: a plurality of disparate databases comprising data objects; and a master data server comprising a computer programmed to provide: a plurality of adapters configured to connect to said plurality of disparate databases; a matching module configured to obtain an object matching rule and to determine all matching data objects, where the matching module is to determine that when a first parent object and a second parent object each comprises sub objects, the matching module will determine and save all data object matches by traversing the sub objects until all matches are determined and saved wherein the object matching rule includes certainty testing that comprises both an automatic matching rule and a manual matching rule, wherein the automatic matching rule determines if both a source and a target object have equal values associated with a first field and specified sub objects match normalized values associated with the first field, and wherein the manual matching rule determines if sub objects related to the first field are equal; and a data integrator configured to merge at least two of the saved matching data objects to produce a master data object.