added support for automatic devoicing

Still a slight bug in detecting voicing of voiceless nasals due to
voiceless nasals being represented by a unicode character. i think the
main cause of the bug may be in the explode function, but it might show
up other places if assumptions are made about character indexes. This is
another big reason to use explode before iterating over letters.