Writes TOML config while preserving comments, formatting, key ordering, and
any keys present on disk but absent from new_content (user customizations,
unknown/future keys). Values from new_content are merged onto the existing
document. Falls back to a plain atomic write when there is nothing to merge
or the existing file cannot be parsed.
Like write_toml_preserving, but keeps the config minimal: keys whose value
equals the type’s default AND are not already present on disk are skipped,
so a hand-written config is not bloated with every default key. Existing
keys are always updated (preserving comments), and non-default values are
always written. default_content is toml::to_string_pretty(&T::default()).