i meant namedtuple _subclasses_, i.e.

```python
class ServiceDescription(namedtuple('ServiceDescription', [
    'name',
    'module_path',
    'class_name',
    'sections',
])):
    def render(self, foo):
        pass
```

has the advantage of nice pytest output if the `==` assertion fails and a free repr, but not completely convinced. think i like it better than the `EquatableMixin` hack though