Fix: The keyword 'not' can start a new statement

The lexer on looking at

    a => a
    not a

must inject an invisible semicolon before returning 'not' to the parser. I.e.
the lexer must recognize the keyword 'not' as a token which can start
a new statement but cannot end a statement.

	modified:   library/kernel/boolean.e
	modified:   ocaml/lexer.mll