Array#shuffle without arguments

TODO: according to specs it should accept an optional hash with :random key
pointing to a random number generator used for shuffling.
create compare module
refactor sorter method
fix sorting
moving <=> to Object
minmaxes
remote tags
fix
Array#index
Merge branch 'kernel-rand' into array-shuffle
Stylistic changes in Array#{shuffle,shuffle!}
Test `a::b = nil` assignments, which are currently not supported
# block versions
# remove array copied methods
Merge branch 'master' into array-shuffle
Don't use self for methods coming from Kernel
Array#shuffle uses Fisher–Yates shuffle

Now the distribution of permutations should be closer to uniform.
Partial implementation of Random#bytes
Parenthesis around arguments in Array#shuffle!
# remove reserse_each_with_index