general updates * added exception type for empty string * updated checks in algorithms * updated tests * moved to new flit publishing method using pyproject.toml
Added Levenshtein, Hamming distance, removed half-done algorithms.
Algorithm implementation: * Added Soundex, Fuzzy Soundex, Metaphone, Lein, MRA. * Added tests for every algorithm. * Updated Licence. * Added and tested some utils.