adding abort method to a promise