Refactoring of candidate extractor implementation (issue #6)