Fix bug in modal dismissal of SKStoreProductViewController

Per the iOS View Controller Programming Guide, a modal view should be
dismissed by the controller that presented it originally. Currently,
the modally presented SKStoreProductViewController is dismissing itself,
which is incorrect. We fix this issue by storing a weak reference to
the presenting view controller and using it to dismiss the modal view.