Fix highlighting of regexes containing escaped forward-slashes

This changes regular expression matching from "sy match" to "sy region",
using the "skip=" to prevent escaped forward-slashes from breaking
things.  It also creates a new group, puppetRegex.
Extend regex highlighting to match additional Regexp features

This extends the regular expression syntax matching to highlight
delimiters, options and other features from the Ruby Regexp class.
Highlighting features like this helps to break up long expressions,
making them more readable.

This also adds similar highlighting for Ruby 2.0 Regexp features, such
as named sub-expressions, lookbehinds and the interpolation 'o' option.
However, as of Puppet 2.3, Ruby 2.0 is unsupported so those matches are
commented out.
Use backslash to escape keywordprg whitespace

According to :help option-backslash the double quote character starts a comment. So in order to include spaces in the keywordprg command they have to be escaped with a backslash.
highlight TODO: FIXME: etc...

iskeyword contains ':', so it needs to be added explicitly
Allow comments in class parameter list