Most events (play, firstQuartile, midPoint, thirdQuartile, complete) shouldn't be tracked more than once. Since we can however receive more than call for them I decided to use this (given, somewhat uncool) workaround.
Ensure that trackImpressions (the only context sent as a NSMutableArray) are only sent once by removing a URL once reported by NSURLConnection.
Using removeObject would produce a "mutating while enumerating in some circumstances" — setting to NSNull produces the same effect without the crash :)
The previous commit didn't completely fixed the case where it would crash. This will, since we're not enumerating anymore.