Promise race challenge
In this lab, you are tasked to implement a custom function
asyncRace that behaves like Promise.race(). This means the function should accept an array of promises and return a Promise that settles as soon as one of the input promises settles (either resolves or rejects). The resulting Promise should resolve or reject the value of the fastest Promise.