Clang-format everything ever.
Replace C++ typedefs with using.
Add overrides to ring buffers.
Introduce AudioSystem.

AudioSystem now represents the entire audio stack, and encapsulates
the current device as well as RAIIing the PortAudio and FFmpeg
libraries.
Move audio code into audio directory.
Use PortAudioCPP instead of C bindings.

This cleans a LOT of stuff up, and generally makes things a lot nicer!