function all(promisesOrValues, onFulfilled, onRejected, onProgress) {
		return _map(promisesOrValues, identity).then(onFulfilled, onRejected, onProgress);
	}
Return a promise that will resolve only once all the supplied promisesOrValues
have resolved. The resolution value of the returned promise will be an array
containing the resolution values of each of the promisesOrValues.
@memberOf when

@param {Array|Promise} promisesOrValues array of anything, may contain a mix
     of {@link Promise}s and values
@param {function?} [onFulfilled] DEPRECATED, use returnedPromise.then()
@param {function?} [onRejected] DEPRECATED, use returnedPromise.then()
@param {function?} [onProgress] DEPRECATED, use returnedPromise.then()
@returns {Promise}