  *
  * This is an object store which works on top of Database. It just manages the
  * database channels to fetch objects.
+ *
+ * E.g. it can be wrapped in an `ObjectTrackingContext` which serves as an
+ * object uniquer.
  */
 public class DatabaseContext : ObjectStore, SmartDescription {
   

      }
    }
    
    // TODO: can we preserve the type? Maybe with a generic fetchspec?
    let ch = DatabaseChannel(database: database)

    try ch.selectObjectsWithFetchSpecification(fs, tc)
    
    while let o = ch.fetchObject() {

      }
    }
    
    let ch = TypedDatabaseChannel<T>(database: database)
    try ch.selectObjectsWithFetchSpecification(fs, tc)
    
    while let o : T = ch.fetchObject() {
