More careful NSAutoreleasePool management