Genre is now retrieved with the state machine as well.

The previous code would get Genre only if none was set. Clearly, that didn't match with the new model of doing things. I'm not entirely sure what the new code will do in all circumstances, though - is it allowed to have a story with no genre? In that case, the isTokenGenre check may need to come back, to verify that this is really the right state.
Story Updater changed to new model

The story updater now knows that the entry always has an overview and
the overview always has chapters. Same thing for the renderer. This
simplified things a bit.