function Promise_race(answerPs) {
    return new Promise(function(deferred) {
        answerPs.forEach(function(answerP) {
            Promise_return(answerP).then(deferred.resolve, deferred.reject);
        });
    });
}
Returns a promise for the first of an array of promises to become fulfilled.
@param answers {Array} promises to race
@returns {Promise} the first promise to be fulfilled