How does this new interface model works and what is about

* the diamond problem that might arise out of this
* multiple inheritance character of this implementation
* and the precedence with which the interface implementations are used
?