We need ES6 Promise implementation to support some APIs and dogfooding. However, SpiderMonkey has not been implemented it yet because there are a web standards problems with how the JS virtual machine's event loop should interact with the event loop of the web browser itself.
Therefore, we need to implement Promise in Servo until SM gets Promise in itself.
See also: https://github.com/servo/servo/wiki/Mozlandia-JS#promises