pub fn serialize(doc: &FurDocument) -> StringExpand description
Render a document to its canonical text form.
Canonical means byte-stable: serialize(parse(serialize(d))) == serialize(d).
That property is what tests/roundtrip.rs checks, and it is the whole point
of the storage inversion.