added combinations::Random iterator

performs well if you only want a small
sampling of the combinations, and poorly
if you would iterate through most or all
of the combinations