Check out
Fionnuala Goodnough’s
Shuffle