Remove magic methods and constructors from interface definitions
Merge pull request #2004 from sjinks/interfaces

Remove magic methods and constructors from interface definitions