New correct: use similar_text instead of levenshtein

First draft of new Corrector.

Two complete separate Corrector class seems dumb. I do think once building an abstract Corrector class or a Corrector interface, however might not worth do it now until we can figure out how users would be interested in this part. So I currently still make base Corrector concrete instead of abstract or interface.