[promise] added tests for cancel/abort methods
[promise] avoid promise to be released before executer is finished
[resolver] fixed error where resolver would consider NSError as a success value