So this last weekend I decided to play around with OpenAL. It's a sound library with an API that's pretty similar to OpenGL. That is, if it's possible for sound operations to be similar to graphics operations.
I've abstracted the details of OpenAL away from the rest of the system by writing a little library that goes on top. The graphics subsystem of this game is already called 'gx', so I'm calling the sound system 'sx.'
sx can't do a lot yet; It can play stereo and mono sounds at different volume levels, with or without echo. This should be enough for my space game. (Yes, there's no sound in space, but its boring without it!)