Check out
Margaret Pedersen’s
Shuffle