mixer: Add MixerListener
swmixer: Trigger {volume,mute}_changed on set_{volume,mute}()
core: Forward {volume,mute}_changed events, don't trigger them ourselves