Usually if a base class needs to know about its subclasses, something is wrong =)