Improving comments to clarify how indentation works.
Mark @ and ! as a symbol constituents, as suggested by @Clemens-H.

Generally only [a-zA-Z0-9] should be word constituents, and everything
else should be a symbol constituent. See
http://emacs.stackexchange.com/q/1075/304 for a discussion.

This also enables us to simplify our regexps.
Factoring out a types regex.
Backporting regexp-opt functionality to Emacs 23.

See https://github.com/JuliaLang/julia/issues/8537
Merge pull request #8716 from Wilfred/wh/more_highlighting_improvements

julia-mode.el: Further syntax/highlighting bugfixes