fn uri_encode(s: &str) -> String
URI-encode a string per RFC 3986 (used in SigV4 canonical requests).
Encodes all characters except unreserved characters: A-Z a-z 0-9 - _ . ~
A-Z a-z 0-9 - _ . ~