Add a document describing the content of documents

This gives details of the formats and semantics of fields included in
documents in the content store.

I wrote this partly in an attempt to ensure that I understand the
semantics of this, and partly to get some good documentation around this
for others. There are still some parts of this I'm uncertain about, so
I've marked them with TODO.
This makes me wonder if we should be treating needs the same as any other piece of content. i.e. they have GUIDs, are in the content store and are tagged against using this GUID.