Check out
Nat Thurston’s
Shuffle