Cleanup/interface

Depends on mixin PR. Review by @DarkDimius