Reject ‘Until’ Errors

Otherwise, if you have a catch block tied to this promise, it will
never get called:

``` objc
[PMKPromise until:^PMKPromise *{
    // This will always fail
    return [PMKPromise promiseWithValue:[NSError errorWithDomain:@"asdf" code:123 userInfo:nil]];
} catch:^(NSError *error) {
    // Don't re-enter the until block
    return [PMKPromise promiseWithValue:error];
}].catch(^(NSError *error) {
    // Never executed without the fix
    NSLog(@"Error: %@", error);
});
```