OneOf Generator

This was a little bit tricky to keep stateless because when you want to shrink to an earlier generator here we have to determine which is the generator used to get the current element you want to shrink

I think this could work, but check it out :heart: 
shouldn't be `rand(1, ...)`? For [4, 6] weights I want to generate a number between `1` and `4+6==10` and then check if it is `<=4` or else `<=10`