add, add_twice and add_newline must be called with strictly increasing offset values.
Sourceval add : t -> offset:int -> unit int is absolute offset of the position
Sourceval add_twice : t -> offset:int -> unit Sourceval add_newline : t -> offset:int -> unit int is absolute offset of the newline character