Tag index

Just starting on this, not for merging yet, but feedback welcome.
OK, I see some in the unit tests. It is literally the tags.