Fix a bug with initializing offset positions in GraftWriter

GraftWriter did not track offset positions properly in the deduplication
dictionary, which resulted in subsequent executions corrupting the index
graft_point data and setting it all to 0s.
Add regression test for GraftsWriter not preserving old grafts.

The test checks that trying to store the same grafts out of order from
a previous run produces the same file offsets for the indexer.