Add `finishRecording` method with completion block (with backward compatibility)

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.
Fix case of nil completion handler, `AVAssetWriter` does not accept it.
Merge pull request #826 from sromanuk/master

Issue when effect has no targets
Merge pull request #823 from iMartinKiss/pullrequest/finishRecording-iOS6

Add `finishRecording` method with completion block
Added a motion blur filter.
Incorporated Jacob Gundersen's fixes to the Voronoi filter, fixed the naming of it across the framework.
Added a zoom blur.
Fixed an error with the second shader program in GPUImageTwoPassFilter.
Restructured the blur filters to use a standardized texel spacing. Fixed a memory leak in the luminance and color averaging, as pointed out by BillHu.
Merge branch 'upstream_master'