String scanning and lexing package