Couple of iPhoneStreamer changes

* Fixed a return type mismatch with the `+[iPhoneStreamer streamWithURL:]` function. AudioStreamer, the superclass, was returning `AudioStreamer *` but iPhoneStreamer was returning `iPhoneStreamer *`. This caused some problems when creating an iPhoneStreamer where an AudioStreamer could be made instead. After I added iPhoneStreamer, the `instancetype` keyword was added to the Clang compiler which solves issues like this.
* Moved from the deprecated C `AudioSession` APIs to `AVAudioSession`. There is a deprecated constant that's introduced with this but I'd need to know what iOS versions you want to target. `AVAudioSessionInterruptionOptionShouldResume` replaced `AVAudioSessionInterruptionFlags_ShouldResume` in iOS 6. The latest version of iOS is 7 but will be 8 in just a few hours.