The changes to checkout and setup-python shouldn't have been major
version bumps. upload-artifact and download-artifact should have had
updated node versions on v3 so we don't have to adapt to incompatible
changes here. But anyway, here we are.
build.yml has updates from
https://github.com/pypa/cibuildwheel/blob/main/examples/github-deploy.yml
This commit also moves the pypi upload step to use OIDC instead of
a static token.