generalized and more efficient cat implementation
need to initialize new gc root in jl_compute_type_union
add helpful quotes to some error messages. closes #8837
Fix #6804

floor(2^31-1*runif(1)) was always returning the value 2147483647. It is now floor(runif(1, min=0, max=2^31-1))
Merge pull request #8841 from pabloferz/pf/perf

Fix #6804
NEWS updates
some cleanup in datafmt

clarify docs for the is_valid_* functions
add isless(::Char, ::Char) method (required for sort), add test
clarification
Merge pull request #7600 from Jutho/jh/cat

generalised and improved cat implementation
dSFMT: use fill_array_* API instead of genrand_* API

Both APIs are not very compatible, so let's use fill_array_* functions, which
are faster but require MersenneTwister to have an additional array field.
make Julia global RNG be an instance of MersenneTwister

The state of the global RNG was previously handled by libdSFMT.
This commit allows the global RNG to benefit speed improvements resulting
from the use of fill_array_* functions (cf. previous commit).

However, scalar calls to rand() (i.e. producing one value instead of
filling an array) using the global RNG are now slower, as well as those
filling non-Float64 arrays (less than twice as slow though).