Moved conditions and contexts from global scope to block scope.
Directives like '/*!re2c:types*/' and '/*!re2c:contexts*/' have
global scope, they are not binded to any particular block and therefore
accumulate items (conditions/contexts/etc.) from the whole program.
There's currently no way to bind these directives to a particular
block (re2c will probably add scoping rules in future).
However, things like default context declaration or condition dispatch
have block scope (it's only natural that they are binded to the block
that generates them).
Unrelated change: context marker should be set for each condition,
re2c must generate it after condition label: this way code that skips
condition dispatch and jums directly to condition label will still
have context marker adjusted properly.