22. A computing device configured to participate in a collaboration session, comprising: a processor; a network interface for sending data over a network while participating in the collaboration session; a memory having computer-readable media with computer-executable components for exchanging data in the collaboration session, including: a data update bus configured to automatically propagate data updates from an application's user interface to one or more documents bound to the application; a state manager that automatically causes the state of the application's view to be described in one or more state documents; a collaboration manager configured to: identify the occurrence of data updates affecting the one or more documents bound to the application and state changes affecting the visual display of the application; and cause transactions describing the data updates and state change to be encapsulated and transmitted to a second computing device that is participating in the collaboration session.
22. A computing device configured to participate in a collaboration session, comprising: a processor; a network interface for sending data over a network while participating in the collaboration session; a memory having computer-readable media with computer-executable components for exchanging data in the collaboration session, including: a data update bus configured to automatically propagate data updates from an application's user interface to one or more documents bound to the application; a state manager that automatically causes the state of the application's view to be described in one or more state documents; a collaboration manager configured to: identify the occurrence of data updates affecting the one or more documents bound to the application and state changes affecting the visual display of the application; and cause transactions describing the data updates and state change to be encapsulated and transmitted to a second computing device that is participating in the collaboration session. 23. The computing device as recited in claim 22 , wherein the data update bus is further configured to cause the data update to be implemented locally by causing user interface components bound to a document to be notified of the data update.