QutePart constructor to support Completer features

All of these changes are flagged with '#krc:' and they are merely a clean pythonic method to pass the necessary parameters to the Completer object. 

In your version, the completer word list is built by the user as they edit. To properly support SQL, the useful word list is basically: SQL reserved words, SQL function names, and database entity names, databases, tables, and columns. These have to be passed in as parameters. To fully support SQL, where the user may connect to a different server, new word lists may have to be dynamically passed to already instantiated Completer objects.