Split mixins into separate files

Closes #31