Any reason not to just use `issubclass` here and  elsewhere in this method?