Repeatedly swap two random items in the array. For each swap, pick two
random array indexes, get the corresponding items, and swap them in the
array. For swapping two items, refer to this
When it's time to get items from the array, simply get the items in
order. Since the array is shuffled, all items will effectively be random
with no repeats.