Sets

Sets in Passgen contain sets of character ranges (a single character being represented as a range which contains just one character), mapped to their weight.

Rust has a special-purpose data structure that is useful for representing these efficiently, which is the RangeMap. This data structure allows us