added Knuth\'s shuffling algorithm