Extend the JSON library slightly to support writing out JSON trees
Add support in riscv_machine to dump the PLIC state and virtio device state as a JSON that can be read back in to restore it
Not all device state is stored yet, but this is enough to boot linux, checkpoint, restore from the checkpoint and then use the virtio filesystem. Which is handy.