reimplementing damerau-levenshtein distance using linux kernel sources