[WIP] Codegen errors

- [x] Remove duplication of interfaces
- [x] Fix fatal errors
`AbstractMethod::buildconcreteMethodsFromOriginalClass($originalClass)`instead? Remember to be expressive