Why would you choose callback over await in JavaScript