New mixer API

For you interested. Still work in progress. Do not merge.

Addresses #665.
Sorry, forgot to add that I'm assuming that the event gets changed to something changed for that case.