mutualmobile/lavaca — pull request #124 by zship (2014-07-07 18:40:09+00:00)
Title: Use a Promises/A+ -compliant Promise implementation

Currently Lavaca uses our own Promise implementation which follows the original jQuery $.Deferred behavior: each `.then()` call in a chain returns the same Promise object. This means that all `.then()` callbacks are called when the first Promise in the chain resolves. I'd prefer the behavior specified by [Promises/A+](http://promises-aplus.github.io/promises-spec/) and the [es6 Promise draft](http://www.html5rocks.com/en/tutorials/es6/promises/)--that is, `then()` returns a new Promise and a chain of `.then()`s will run sequentially ("wait" for each step in the chain to resolve/reject). We could use an existing implementation or make our own, but the real task would be ensuring that all library code which calls `.then()` assumes Promises/A+ behavior.