This fails when storage type is `immutable` or `const real` (which can happen when an immutable or const real range is provided with the way that `RandomDieStorageFor` works). Will fix & improve tests in next commit push.

I might actually change StorageType to be `immutable` by default and just use `assumeUnique` when actually stored (since there is no reason to keep the cumulative sum array mutable after it's made).