Replace amd64 build tags with cgo as appropriate

This requires #7377 in order to actually compile properly in `make cross` (hence that commit being included here), so please review that one first.

Essentially, this removes _all_ our explicit "amd64" build tags in favor of more specific tags that actually apply to the buildability of the relevant code (ie, just `+build linux` or `+build linux,cgo` as necessary).