This interface is the combination of two needs: 1) A Ruby interpreter position (for warnings
and errors). The interpreter only cares about filename and endLine. 2) A IDE position (offsets
for showing ranges of grammatical elements).
The offsets represent positions 'between' characters. So a variable 'abc' has a startOffset
of 0 and an endOffset of 3 ( 0a1b2c3 ).