Add a ReplacerResult similar to FinderResult

- also other minor refactoring.