Fix confusing convention

This pull request aims to fix an old confusing convention that is the reminescent of my first experiments with pcef (the old pyqode 0.x) and jedi where line numbers were 1 based and column numbers 0 based.

The main problems with this convention are:
   - 1) it is confusing and annoying for the developer
   - 2) it is not coherent with the qt text api (where column and line numbers are all 0 based)
   - 3) it makes integration with other libraries harder than it should

pyQode will now follow the Qt Text API convention where line and column numbers are all 0 based.

This change introduces a backward incompatility for the text helper API. If you were using pyqode and had created some custom modes/panels, then you will have to make some adaptations. If you were simply using the exisiting modes and panels, this does not change anything for you.