Fix n gg selection

With this, you can you use `n-gg` to select to the nth line.
And I add the support for characterwise selection.

But there's a 2 problems left:
1. it doesn't work for the line below current line. For example, if you're at 4th line, then you press `V`or`v`and`6gg`, it doesn't word.
2. I think we should apply this to `G` motion. But the implement of `G` is different from `gg`, so much code will be changed.

I'm working on the 2 problems but needs some time. Maybe it's suitable to create a PR first for this one :smile: