Passes all content setting through the deserialization method.

This centralizes handling of non-utf8 characters and closes #387.
Merge pull request #388 from terrellt/feature/FixLegacyNonUTF8

Passes all content setting through the deserialization method.