refactoring. add errorformat and commentstring.

I did more refactoring. It is following.

* Do not abbreviate. (e.g. syn -> syntax)
* add augroup
* ==# -> is#
* Use setlocal. 
* Add &errorformat and &commentstring.
* main_syntax -> g:main_syntax. 
I think this was right before, without this augroup change. Vim automatically loads all ftdetect files into the same filetypedetect augroup. In fact, I think having `augroup END` in any ftdetect file can cause strange problems by ending the filetypedetect augroup early and causing all subsequent ftdetect rules to end up in no augroup.