partially working lexer
make it proper:
remove modules
lexer stuff