Correctly report error locations

Line is reported using 1-based indexing.
Column is reported instead of offset and does not gets reduced
when line is longer 80 characters.
Add tests for error location reports