ES5 shim for ES6 (ECMAScript 6) Reflect and Proxy objects
Make a promise always fulfill with its actual fulfillment value or rejection reason
Settle promises concurrently and get their fulfillment value or rejection reason with optional limited concurrency