Much revampery.

- Codex is now a separate project (and is designed to operate on source from
the ground up; we'll only fall back to ByteCode if all else fails)
- Project id and source URLs are (somewhat) more carefully modeled
- Other kibbles and bits

Some bits still linger (Model &c) which I'll clean up as I sort out how Codex
will interact with Analyzer and Tester and so forth.