identity: use shared http.Client for lookups, and close resp bodies (#565)
I think these were embarrassing oversights?
For PLC in particular, want to keep HTTP/2 connections open for reuse.
Less of a thing for the well-known lookups, though for the common case
of `*.bsky.social` lookups, there are lots of hostnames, but all the
same backing server, so hopefully still works.
`did:web` we might actually want a separate connection every time.