Why do you think self.__class__ is not a good way to go about this? I am not sure I understand what you are hinting at. I do not see any usage of "self.func" in this module (I see it elsewhere).