Moved out the left over core audio stuff

The were a few classes left over from the WASAPI move.

I have also abstracted the State/type/role from the core audio api, it
defines its own enums for this.