Implement a canonicalizer. It should:
- trim keys
- sort keys
- ensure that strings are only represented as ZObjects when they need to be escaped
- ensure that references are not represented as full ZObjects
- ensure that lists are represented using the square bracket syntax
The canonicalizer should be called when storing content in the wiki.