Initial support for fail callback
Further support for fail callbacks
Fix bug with passing of result for a resolved promise
Clean-up
Handle rejected promises in a call chain