Rewrite the bash upgrade script as a standalone Go program for better
portability and maintainability. The tool preserves all existing behavior:
three-category file classification, dry-run mode, Go source resolution
(gvm/GOROOT/download), 3-way merge via diff3, and colored output.
Build: cd tools/upgrade && go build -o upgrade .
Run: ./tools/upgrade/upgrade --dry-run
Signed-off-by: deadprogram <ron@hybridgroup.com>