Misc changes to LineEditData

* Centralize the scrolling behaviour in UpdateScroll
* More const methods
* Add GetViewStartPos
Console: Add a default cmd to Field::RunCommand
Console: fix some autocomplete bugs and better support old completion code
Console: make autocomplete a bit more clearer and correct