allowed for optional Random object to be passed for use in selection of random items from list