First iteration towards #12
Second iteration fixes #12
Version 2.0.5, fixes #11
Issue #13 tests.
Minor fixes before going on #13
First solution for #13, but more convienient API will be needed.
Version 2.1.0, API that accepts arrays for #13
Merge upstream changes
Add .fail alias to .catch for promises