To help with CSV output, a simple trick of making our Map.toString() return JSON rather than built-in toString(), which is already very JSON-like but not quite.