Existing libraries - like jquery, reqwest and superagent - had no easy support for promises, binary files and progress events, did not support a wide range of browser versions, did not nicely treat HTTP status codes. So I made this.
What happens if you use this with a different promise library (e.g. bluebird)? I'm rather confused - if everything implements it's own promises, does it "just work" or do we have to worry about it all getting rather messy?