Update supported go versions

Client: go

With the release of go 1.23, update supported go versions to 1.22+1.23
according to our go support policy.

Also update the code to use the new range loop feature introduced in go
1.22 when appropriate.

Also fix a bug in TSSLServerSocket.Addr that it does not return the
listener address.
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 8288849..39e8b8e 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -135,8 +135,8 @@
     strategy:
       matrix:
         go:
-          - '1.21'
           - '1.22'
+          - '1.23'
       fail-fast: false
     steps:
       - uses: actions/checkout@v4
@@ -180,7 +180,7 @@
         run: make -C test/go precross
 
       - name: Upload go precross artifacts
-        if: matrix.go == '1.22'
+        if: matrix.go == '1.23'
         uses: actions/upload-artifact@v4
         with:
           name: go-precross