I think I now have a stable implementation of the data structure (data model) that realises the basic Clique Space capability. This basic data structure is manifest in the Clique Space project, and is built on in the Agent Device and administrator client (Client Device) projects so to specialise the basic data structure for these two devices.
The basic data structure is a marvel in its use of Java generics. To achieve type consistency between all the Elements, the Clique, the Clique Space, the Clique Space container, and the device implementations, each class is declared in almost an identical way. I think nothing has ever used Java's generic class parameterisation feature quite the same way that I have done here.