Major refactoring of interfaces