Calculates the metaphone key of
str.
Similar to soundex() metaphone creates the same key
for similar sounding words. It's more accurate than soundex()
as it knows the basic rules of English pronunciation. The
metaphone generated keys are of variable length.
Metaphone was developed by Lawrence Philips
lphilips@verity.com . It is described in ["Practical
Algorithms for Programmers", Binstock Rex, Addison
Wesley, 1995].