Ensure only one of DEBUG or NDEBUG is defined for compilation
Add DebugLog and pass the lexer position to Error throughout
Only update the lexer position on moving to the next token