Why does Apple use assign rather than weak to store a delegate? http://stackoverflow.com/questions/20419317/why-does-apple-use-assign-rather-than-weak-to-store-a-delegate