Fix exception on board and topic history pages


Fix exception on board and topic history pages

This was caused by the new normalization code (designed to better
handle schema changes), along with the fact that BoardHistoryIndex
could hold different types of revisions. This meant that after
e.g. editing a header then making a post, the post would have
missing fields (the ones a header didn't need) in the history.
This caused an exception when deserializing the post.

This patch separates posts and summaries into their own indices.
Headers just use an existing index that is suitable for this
(we bump the key to invalidate that specific one, though, because
the count is increased).

Similarly, for topic history we can reuse an existing index for the
summary, but need to make one for post. Separating them also
allows reusing an existing UniqueFeatureIndex and removing
related code.

While working on this, I also noticed some pagination use cases
that do not seem to be handled, so this starts working on this too.
So far this just has the index reject certain queries. Pagination
is not right yet, though.

Also, avoid a notice in the navbar from offset being a UUID.

Bug: T111494
Bug: T112230
Change-Id: Ideaba2a1431c4dca10e8706536db30f410930ed0