|Think about Loose Coupling|
I've read your post several times now and I keep coming back to the same question: How do you write code to use methods you don't know the names of?
With normal inheritance, you write the code in terms of the base class methods, and the subclass overrides (or just provides) the implementation. But the method names and parameters are known up front.
What you appear to be describing is a mechanism for constructing classes or objects at runtime and "discovering" the methods available on the fly. And your concern is how to safely invoke the methods so discovered.
My concern would be how could you ever write code to use such an object?
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.