New mixer API

For you interested. Still work in progress. Do not merge.

Addresses #665.
Magically relying on non declared attributes and that nobody else is using them for something else feels fishy. If you really want this it would be a valid case for using the `__last_volume` type magic which will protect the attr from other classes through mangling.