At the module layer, LabSpace carefully distinguishes roles of the modules, separating concerns as much as possible. The broker takes on the role of the session organizer, mediating connections and keeping track of the capabilities of the various modules.
This organization allows one to develop both high- and low-end applications that can interoperate, and focuses the modules on their role - handling the communication data that is critical to a succesfull collaborative experience.