Protected Category to avoid warnings
Use dispatch_ functions to avoid warnings
Autorelease to avoid leak
Merge remote-tracking branch 'origin/memory-cleanup'
Adds a Protocol for Promise to work better with dependency injection
Merge remote-tracking branch 'origin/promise-protocol'