Rename context

A rule was referring to the #m4 context which does not exist; it should
have been #m4-pure.
Allow M4 highlighting within shell contexts

Previously, in the following code,

if test "$HAVE_NETLINK" = yes; then
    AC_DEFINE([HAVE_NETLINK], [1],
        [Define to 1 if Netlink protocol is available.])
fi

AC_DEFINE would not be highlighted as M4 code (and therefore "if" in
the help text would start an erroneous if-block, breaking the rest of
the file.) This happened because the relevant context in Sublime Text's
shell script highlighter would include "$self" which only referred to
the shell scope, even though that scope was being included in the M4
highlighter.

The solution is to copy over any patterns from the shell highlighter
that refer to "$self", and include them before including "source.shell"
so that they take precedence.

Now, anywhere that shell code is allowed, M4 code is also allowed.

[#1]