Cancel delayed requests with ALSource object before deallocating

Crash may occur if delayed invocations happen after deallocation.
Merge pull request #56 from miklselsoe/master

Cancel delayed requests with ALSource object before deallocating
Deprecated some OALAudioSession properties:

- preferredIOBufferDuration
- ipodPlaying
- hardwareVolume
- hardwareMuted
- audioRoute

Use AVAudioSession for these values instead.

Also fixed some minor warnings & issues.
Added *.xccheckout to .gitignore.
Removed version checks for >= iOS 4.
Marked bugs with "Bug:". I'm not sure if they still are bugs or not…
Fix for slowdown when playing sounds quickly.

Up until now, ObjectAL has monitored every OpenAL call for an error, and would reset the audio session when this happened in order to get around playback bugs in iOS that would cause OpenAL to get stuck in a bad state and stop playing audio entirely (resetting the audio session would fix it).

Unfortunately, there is another OpenAL issue where it will start to intermittently return a -1 error code (which is itself an invalid error code) if you try to play buffers too often. This would cause it to output a log message and reset the audio session, an expensive operation. At sufficiently high playback rates, it could grind the app to a halt.

To fix it, I've disabled the audio reset when a -1 error code is returned. This gets around the issue, but of course now it will never reset the audio on a -1 code. Since the "bad state" bug was in iOS 4, it may not even be an issue anymore, but if it is still an issue, this fix may expose that old bug once again, disabling audio entirely in certain rare situations.

I've also added another demo that allows you to test fast buffer play rates.
Merge branch 'master' of github.com:kstenerud/ObjectAL-for-iPhone

Conflicts:
	ObjectAL/ObjectAL (iOS)/OpenAL/ALSource.m
change the loading order so that the AVAudioSession's category gets set before we open the ALCDevice. fixes an issue on iOS 7 where calling alcOpenDevice before a category is set will stop other app's music as though the category were AVAudioSessionCategorySoloAmbient (which is the default category).
Merge pull request #60 from commanda/master

Fixes #59. Change the loading order so that the AVAudioSession's category gets set ...
More robust result checks.

All returns from OpenAL are now checked. A failure will cause the affected object to abort construction. This includes OALSimpleAudio.
This means that you must check the result of [OALSimpleAudio sharedInstance] at least once to be sure it successfully constructed.
Restructured file layout.

ObjectAL (iOS) -> iOS
ObjectAL (OSX) -> OSX

All ObjectAL specific files have been moved to the ObjectAL directory.
Changed the demo to use cocoapods for cocos2d.
Updated podspec to 2.3
MIT license
Destroy the OALSimpleAudio shared instance on error.
Otherwise SynthesizeSingleton keeps the broken instance around.
Double-release :(
Build for 64-bit.