implemented casefold_iterator

The unicode::casefold_iterator class helps iterating over a UTF-8, UTF-16, or
UTF-32 string while applying casefolding to it. Lots of templates! Sexy
templates they are, though.