Lexer::getNextToken added startPos and endPos

This PR add the start and end position of the token in the code, very useful to map every token in the file.

Thanks for this excellent project.
What's the reason for this change? I don't see any other related code using it.