Scope macro keyword workaround

*Depends on #67*

As discussed in the comments of #51, empty `@autoreleasepool {}` are not optimized away by clang. This change keeps the use of `@autoreleasepool` in `DEBUG` builds to avoid the suppressed warnings identified ReactiveCocoa/ReactiveCocoa#952, and uses `@try/@catch` otherwise, to avoid unnecessary autorelease pool creation.

I've run the tests in both Debug and Release configurations.

Resolves #66