Careful transcoding attachments with a charset

If a non-text attachment specifies a charset in the content-type header,
don't transcode the content before saving it to the database. This can
corrupt attachments which have a header like the following:

Content-Type: application/pdf; charset=UTF-8

Since a PDF contains binary data, coercing it to UTF-8 encoding will drop
characters not valid in UTF-8 and will corrupt the attachment data.