[Compaction]  Make CompactorFactory and Compactor to take CompactionOptions.

Summary:
Make CompactorFactory and Compactor to take CompactionOptions.

Test Plan:
db_test, listener_test, compactor_test
[Compaction] Fix lint errors.
[Compaction] cleanup
[Compaction] Fix a corner case in SanitizeCompactionInputFilesForAllLevels
[Compaction] clean up for merge
[Compaction] improve comments.