Allow Documents to store arbitrary metadata, not amounts
Ergonomic improvements to handling JSON in routes