Properly track column numbers in erl_scan

This is a partial revert of 05c4d31b2c5c5f6ade7d91b55c598fe7fa58e509 in which a new macro `?STR()` was introduced. This macro was a premature optimization which makes erl_scan not compute token text values when option 'text' is not set, making functions `tok2` and `tok3` use an empty string when computing end columns.