Decode and encode non-ascii header values (UTF-8)
Non-ascii strings are represented as "encoded-words" as defined in
RFC 2047:
https://datatracker.ietf.org/doc/html/rfc2047
This commit handles only UTF-8 charsets, both "B" and "Q" encodings.
Update for checkless for loops
all: update per upstream stdlib changes
message: implement read_header
message::new_header: clarify interaction with DKIM
message: move header functions around
message: implement header_write
message/header: implement header encoding/raw ops
header: flesh out a bit more