Do we want to say this should never be directly instantiated in favor of one of the subclasses, or is that overkill?