Implement lexer

This make the parsing much easier