* refactor(run)!: get rid of emit-and-throw & throw-literal antipatterns
* refactor(run)!: convert run method to async/await
* refactor(run): require build module in advance
* refactor(run): minor cleanup
* refactor(run): drop always-undefined option arch
`parseBuildOptions` only sets `arch` if something truthy is passed for
parameter `resolvedTarget` to which we pass `null`.
* refactor(run): destructure buildOptions