Reduce calls to CGImageSourceCreateImageAtIndex in designated initializer

Calls to this function take on the order of tens of milliseconds for the sample GIFs in this project on an iPhone 5, and they can take hundreds of milliseconds for an 1100 frame 240x320 GIF on the same device. We only need to call CGImageSourceCreateImageAtIndex and UIImage's -imageWithCGImage: if we're lacking a poster frame, otherwise we can short circuit around this call.