Why choose async/await over threads?