Invalid hints remain after compaction

I had been seeing some random IllegalStateExceptions from ```hasRecordHeader```. I was also able to get ```testConcurrentCompactionDuringWriteAndRead``` to fail the odd time after hammering on it repeatedly. 

 I'm not sure if there may be another underlying cause based on my limited understanding of the internals but it seems there are occasions where the hints map would contain old positions added from signalBatch after a compaction. This patch just ensures that only the hint added by compaction is present for the datafile just compacted.