Clean up some bits of UIImageView+AFNetworking.m

The largest change was setting the underlying dispatch queue to not be the main thread, which should help make the UI feel buttery smooth.

Additionally:
1.  `-[NSMutableDictionary setValue:forKey:]` can handle the value being `nil` unlike `-setObject...`
2.  The static const char* keys seem needlessly verbose considering these are internal to the class(es) anyway
3.  I moved `[[UIImageView af_sharedImageCache] cacheImage:response forKey:key]` to the single standard completion block instead of that call being duplicated multiple times (and thus called multiple times)
4.  Lines 198/200/204 make use of the weakSelf/strongSelf semantic so that the UIImageView can safely dealloc when appropriate 
can we wrap the whole block inside of the dispatch? (non-blocking)