repair InclusiceInitialCondition.Match and allow explicit $INITIAL
allow up to three lexer state stack operations

* fix the used regex, allow _
Improve error reporting for initial conditions
improve initial condition error reporting
cleanup generated lexer: remove unnecessary SetInitialConition function
add %nullmatch directive

* %nullmatch <start condition list>
* all start conditions declared with nullmatch allow the
  empty token as match, if their regexen allow it
* be careful to switch state on an regex allowing the empty
  token, otherwise indefinite loops may occur