Reduced memory usage when there are a large number of operations in the queue

Added autorelease pools to some areas where Instruments measured high memory usage (when many operations were in the queue).

Another area of high memory usage was the initialization of AFURLConnectionOperation, specifically the creation of a to-memory output stream. This has been changed so that the output stream is now created lazily. Coincidentally, this also guards against the programmer error of setting the output stream to nil.

UPDATE: I added another commit for proper usage of run loops.