make transliteration using icu work for strings where the transliteration is longer than the original

- the *sizeof(UChar) in “ustr = g_realloc (ustr, ustrCapacity*sizeof(UChar))”
  was missing
- the buffer holding the string to transliterate is modified
  in place. After the transliteration has failed due to U_BUFFER_OVERFLOW_ERROR,
  this buffer maybe modified already. It is not enough to just
  increase its size and then try transliteration again, the modifications
  which are already there may prevent a correct transliteration result.
  Therefore, this buffer has to be initialized again with the
  original string to be transliterated.