better support for sh and c/c++ v1.2.8

- support "case" in sh-mode
- support "function" and "exit" in sh-mode
- support "switch" in c/c++