Add `finishRecording` method with completion block

**iOS 6 SDK and higher:** If writer responds to async method, call it, otherwise call synchronous method and completion handler.
**iOS 5 SDK and lower:** Call only synchronous method and completion handler. The rest should not be even compiled.