I have almost finished writing AudioPlayer system.
The pre-sets are just examples, everything you see in inspector is procedurally generated or found in assets. The only thing that needs to be changed are enum's in the code. And then reset the script. Audio Sources are accessed via enum's and are stored inside Dictionaries. AudioSource objects are pooled in ObjectPool as well, so if developer uses PlayClipAtWorldPoint() new object isn't created and destroyed.
If only Unity would allow to access Effects in MixerGroup and get parameters like mute, solo, bypass - it would be way easier/faster/performance lighter instead of exposed parameters. Multiple AudioListener would be handy as well.