Better inheritance using categories instead of subclassing

This is, IMHO less invasive.