1. A method of updating a common data source of data items and associations among said data items, wherein said common data source being accessible by more than one client storing copies of at least two of said data items and at least one association between at least two data items, and wherein at least one of said data items is a thought capable of being interactively modified, created, or interconnected by at least one of said clients, comprising: receiving a request from a client to modify a data item; and updating said data source according to said request.