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.