So hypothetically, if you could add new methods to an existing class, it would solve the problem?

New virtual methods, yes.