vim: Cleanup word matching code

**Don't merge it yet!** It requires review from people that actually know the Vim syntax :)
> The use of `skipWord` here skips also `[aug]roupfoobar`, while previously only `[aug]group` would get handled.
Same for `parseFunction`.

Yes, but those [only get called when a proper word matched](#diff-30a4730f12d2b00dbc177d642cb76c83R592) anyway.  Another solution that might make this more obvious would be to skip the initial word in the caller side, like this:
```C
else if (wordMatchLen (line, "augroup", 3))
    parseAutogroup(skipWord(line));
```
rather than at the start of `parseAutogroup()` or `parseFunction()`.