This entails a bunch of stuff, and I'm not sure how good an idea a lot of
it is.
- Adds a new tagging format for properties:
tag.foo.bar.prop
Where `foo` and `bar` are treated as elements of a path. Thus if
`archives/2019/10/5/tag.topics.technical.prop` exists, then
the entry at `/topics/technical` will link back to `/2019/10/5`.
- Adds "virtual" entries - if tags link to entries that don't exist,
they're implicitly created.
- Adds a concept of metadata distinct from (but about) entry text, and
caches this for every entry.
- Adds caching of child entries to EntryStore.
- Migrates `get_sub_entries()` and `subentry_expr` into EntryStore.
There are XXX comments littered all over the place at this point. Stuff
will definitely change before a release.