The next state to process during insertion and any remaining ranges that we
want to add for a particular sequence of ranges. The first such instance
is always the root state along with all ranges given.
Split represents a partitioning of two ranges into one or more ranges. This
is the secret sauce that makes a range trie work, as itβs what tells us
how to deal with two overlapping but unequal ranges during insertion.
A transition is a single range of bytes. If a particular byte is in this
range, then the corresponding machine may transition to the state pointed
to by next_id.