This patch adds the possibility for syntax files to
mark a part of the current line with "mark" and
"markend" just like "buffer" and "stop" for buffering.
But instead of doing string matches on a buffer, this
patch marks the characters for later recoloring with
"recolor_mark". If a state transition has this flag,
the marked is recolored into the new state's color (as
for strings matches: even if it is a no-eat-only state
that does not color any characters on its own) and the
mark is cleared.
This makes it possible to recolor an
run-time-determined amount characters, something that
is not possible using "recolor=-N".
Also this patch makes some flags in the state
transition structure bitfields to save memory.