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.
Merge branch 'kernel-rand' into array-shuffle
Stylistic changes in Array#{shuffle,shuffle!}
Test `a::b = nil` assignments, which are currently not supported
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!
Merge pull request #516 from jstepien/array-shuffle

Array#shuffle without arguments
Merge pull request #563 from jstepien/random-bytes

Partial implementation of Random#bytes
Updated test and implemented.
Merge branch 'pr/560'
Fixed #561 -- don't try to load both a directory if there's a path with that name
fix up the require tags