Updating the code to the design planned.
First part of the AudioGate work finalized to improve it's abstraction and make it able to receive and play audio buffers.