Sending email through an SMTP server, plus a small text obfuscation helper.
Fill in a Mail_Server and a Mail_Message and call mail_send, which delivers the message with libcurl and returns
whether the server accepted it. It blocks until the exchange is over, reports failures through context.logger and
its result rather than stopping the program, and borrows every string it is given. See mail_send for what is
checked up front and how TLS is used. scramble is a reversible XOR mapping for keeping a string out of plain view;
it is not encryption.
Obfuscates text with secret and returns a string of the same length; running it again with the same secret gives the
text back. This hides text from a casual look and is not encryption.
text := "Az 19!aZ0";
hidden := scramble(text, "A!z");
assert(hidden.count == text.count);
assert(hidden != text);
assert(scramble(hidden, "A!z") == text);