Recursive Levenshtein + tests