Let callbacks be added to promises and executed...

...after the promise has been resolved.
Simplify firing errors

Pass in the requestConfig object and access the request data and error
context message from that, instead of separately passing them in.
Fix bugs handling errors
query