1. A method of distributing data events between multiple applications operating on a computer system, comprising the steps of: A) connecting each application to an information bus (InfoBus); B) registering each application with the InfoBus; C) assigning each application to a selected data controller; D) sending data events over the InfoBus to each data controller; E) forwarding the data events to each application assigned to each data controller.