Add a safer formable function that doesn't yet crash if the source
JSON isn't valid. This is a stopgap while we make the main deserializers
more robust to real-life data inconsistencies.