add an implementation of the levenshtein distance algorithm

I went with the inefficient, recursive variant because A) it's
straightforward and really easy to get right and B) I probably
won't really need it for strings longer than (say) 20 characters
or so.

Besides, I could always do a matrix implementation if it proves too
slow.