also for later: 
should we be more flexible than imposing that users provide a subclass?