The main problem I have with input auto-completion is that the majority of times I'm using my phone to type, I'm using non-dictionary-but-meaningful-words (e.g. street names, foreign language terms) and the autocompletion usually just gets in the way. I've yet to see a system that addresses these kinds of usability issues.