Schema

Here's a PR so you can play with the schema, pretty interesting idea, if a little verbose.

(I branched this from the stubs, so I assume that's "tied together" enough!)