iOS backend now uses OpenAL for SFX.

This comes with some restrictions. Chiefly, you must use uncompressed CAFFs on
the OpenAL path. If you use compressed audio (be that IMA4, or MP3),
AVAudioPlayer will be used. Unfortunately, it's possible to put IMA4 compressed
audio into a CAFF file, which is no longer supported. We have to differentiate
by file suffix, so the new prescribed approach (which is also used by Sparrow)
is to use AIFF (called AIFC when compressed) for IMA4 compressed audio. Here's
the cheat sheet:

  # creates sound.caf (little endian, 16 bit)
  afconvert -f caff -d LEI16 sound.wav
  # creates sound.caf (little endian, 16 bit, 22kHz)
  afconvert -f caff -d LEI16@22050 sound.wav
  # creates sound.caf (little endian, 16 bit, MONO)
  afconvert -f caff -d LEI16 -c 1 sound.wav
  # creates sound.aifc (IMA4 compression)
  afconvert -f AIFC -d ima4 sound.wav
  # creates sound.aifc (IMA4 compression, MONO)
  afconvert -f AIFC -d ima4 -c 1 sound.wav

The OpenAL path is only needed when you need to play lots of SFX fast fast
fast. It may eventually be possible to support IMA4 compressed audio in the
OpenAL path (OpenAL doesn't care, but we have to manually decode your audio
before passing it to OpenAL, which is non-trivial and takes CPU time). So it's
perfectly reasonable to use loadSound("foo") which resolves to foo.aifc. Some
SFX don't need to be played in rapid succession, and compressing them is
worthwhile.

This introduces another change, which I'd like to eventually make consistent
across all platforms, which is that each time you play() a sound, it is started
anew on a separate channel (and thus can overlap itself). You can only control
(adjust volume, stop, etc.) the *last* played instance, but if you're playing a
sound often enough to overlap with itself, that is highly unlikely to matter.
The upside is that this DWYM for the most part, because if you're playing a
sound rapid fire, you don't want it to cut out earlier playing copies
until/unless you run out of hardware audio resources.
Made CAF uncompressed, added AIFC to test that path.