UICollectionViewCell now uploads image asynchronously, use NSCache to store images temporarily for resuable cell