Range
data class Range(val start: Point, val end: Point, var source: Source? = null) : Comparable<Range> , Serializable
An area in a source file, from start to end. The start point is the point right before the starting character. The end point is the point right after the last character. An empty range will have coinciding points.
Consider a file with one line, containing text "HELLO". The Range of such text will be Range(Point(1, 0), Point(1, 5)).