pickWeightedValue<T> function
Picks from options by integer weight (research ยง9.5).
Implementation
T pickWeightedValue<T>(Rng rng, List<Weighted<T>> options) =>
options[rng.pickWeighted([for (final o in options) o.weight])].value;