Implemented everything except soundex and kicking