syntax-table changes

`_' is symbol (default), `$' is prefix, `()' are paren by default
Consistent wording
Use `(set (make-local-variable))' in initialization
Clean up for warnings, elisp idioms
Correctly initialize syntax table
Add `cmake-regex-function'