fix(open): Oops, check first checkpoint gen
Oops, missed adding a small but very critical check at startup. Make sure that the generation of the first checkpoint is the same as the first entry in the Store. If that invariant is violated, then needRecovery may accidentally allow the first entry to be overwritten if there are no other checkpoints with the correct Generation to detect corruption (as opposed to unexpected shutdown).