(PDB-747) Initial schema for structured facts support

This patch adds an initial schema for structured facts support.

Signed-off-by: Ken Barber <ken@bob.sh>
(PDB-708) Structured fact storage

Here we add the initial work required to start storing structured facts in
its new schema.

Signed-off-by: Ken Barber <ken@bob.sh>
(PDB-708) Migrate from old facts schema to new structure aware schema

This changes the structured-facts migration to move data from the previous
schema to the new.
(PDB-745) Structured facts garbage collection

This updates the garbage-collect! function to accomodate the new schema.
(PDB-708) Add backwards compatible querying capability for facts

This patch fixes our queries so that the old facts end-point still returns
facts.

It uses the new schema, but is only able to display items at the top level
for now. It does this by checking a depth column we populate upon command
submission to fact_paths.

As a consequence of this change, it creates some question about backwards
compatibility. For now I'm reverting the change to unstringify the facts
at the terminus so the old behaviour is still kept end-to-end.

Signed-off-by: Ken Barber <ken@bob.sh>
Merge pull request #1019 from kbarber/ticket/master/pdb-708-structured-fact-storage

(PDB-708) Structured fact storage