http://www.raywenderlich.com/71151/image-processing-ios-part-2-core-graphics-core-image-gpuimage