
Follow up on `DownloadQueue` for download concurrency on `brew fetch` and `brew install` to also add support for `brew reinstall` and `brew upgrade`. This required a fair bit of refactoring to make this work so I've also made `install.rb`, `reinstall.rb` and `upgrade.rb` `typed: strict` to add some extra guardrails from Sorbet here. Co-authored-by: Carlo Cabrera <github@carlo.cab>