1. A healthcare information management system for synchronizing data in different instances of a first patient record that are maintained by different deployments and where the instances of the first patient record maintained by the different deployments may be updated simultaneously so that the first patient record maintained by different deployments may be different versions at any time, the system comprising: a plurality of deployments including at least a first deployment wherein each deployment includes at least one server including a processor that runs a computer program, and each of the plurality of deployments maintains a generation level for the instance of the first patient record stored by the deployment; a communication network communicatively coupling the first deployment server to other remote deployment servers; wherein the first deployment server performs a program to carry out the steps of: storing a first instance of the first patient record; receiving updates to the first patient record from at least one other remote deployment accessing and modifying the patient record, the update including the generation level corresponding to the patient record at the other remote deployment; determining when whether a received update builds on the first instance of the first patient record based on the generation level of the first instance and the generation level of the received update; and when the received update builds on the first instance, using the update received from the remote deployment to reconcile the modification with the first instance of the first patient record thereby generating a new version of the first instance and publishes the reconciled modifications to all deployments while the remote deployment server is accessing and modifying the patient record; when the received update does not build on the first instance, determining if the first instance was built on the incoming update and disregarding the update as a duplicate if the first instance builds on the incoming data; and if the received update does not build on the first instance and the first instance does not build on the received update, moving the update to a conflict queue.