charsBetween(fromCharOrId, toCharOrId) {
    let indexFrom = 0
    let indexTo = this.chars.length

    if(!charEq(fromCharOrId, this.start)) {
      indexFrom = this.indexOf(fromCharOrId) + 1
    }

    if(toCharOrId !== EOF && !charEq(toCharOrId, this.end)) {
      indexTo = this.indexOf(toCharOrId) + 1
    }

    return this.chars.slice(indexFrom, indexTo)
  }
Obtains chars between the given char (exclusive) to the given char (inclusive). Note the
begin exclusivity operates differently than array slice (which is end exclusive), but corresponds
generally with how character ranges in the editor are used.
@param fromCharOrId
@param toCharOrId