update with new algorithms

replace Levenshtein algorithms with complete code, reorganize package