Extracting facts out of asid.clj.

The goal is to make that file more manageable and to migrate those
facts to actual acceptance level descriptions of the behaviour of the
app.
JSON doc processing handles invalid JSON correctly.