- pollutes the virtual interface for only very rare external use-cases
- is abused for ctor initialization in the generated code by using dirty ctor to virtual calls
Externally the effect of clear() is the same as calling removeHeader, so add a template convenience overload for that and remove clear().