As promised, here's the latest code. Feel free to poke as many holes in it as possible. I'm going to use this, almost completely unchanged, for NSSound.m. The bundle/plug-in stuff will go in 100% unchanged.
To build this, you'll need to go into the bundles/ directory to build and install the 2 bundles/plug-ins before hand. The plug-ins are not required, the NSSound object will simply be destroyed (see -initWithData:) if suitable plug-ins are not found. There are a few "FIXME" tags in NSSound_test.m, these are there to remind me that I need to fix that before going any further (suggestions are welcome). The "FIXME" in -soundNamed: however, is not mine and I really do not know what to do there.