Reimplement preedit text holder behavior

This should fix #9 and #10 together