Remove trailing spaces.
Fix Issue #5240: faster std.random.uniform for [0.0, 1.0) range

Following typical design in other languages, the function is named
uniform01.  It can be templated on floating-point type, defaulting
to double if none is specified.

The implementation is pretty much derived from its counterpart in
Boost.Random, in particular in its taking account of the different
requirements for integral versus floating-point RNG values, and in
checking that the generated variate is less than 1 before returning.
This last check is necessary simply because we can't guarantee, in
the case of a floating-point based RNG, that we will not get a
result exactly equal to 1.

Fixes http://d.puremagic.com/issues/show_bug.cgi?id=5240
Mark methods for random number generators in std.random as safe pure nothrow
Add asserts in Copy (and remove an enforce)

Adding extra asserts always helps. As for the enforce, I'm unsure why it was there in the first place: All the other branches simply make the assumption the target is large enough.
Small optimization to uniform01

Only need to chech u < 1 if RNG returns non-integral variates.
Make move CTFEable for simple structs and classes

memcpy is not CTFEable, so avoid it for structs without
dtor, postblit that can be assigned with plain =.

This leaves as is (compile error in CTFE) structs that contain
immutable/const memebers the fact that moves overwrites such
fields is questionable to begin with.
Fix newly introduced FQN issue caused by 313
Merge pull request #2055 from 9rnsr/fix_imports

Fix newly introduced FQN issue caused by 313
Merge pull request #2036 from blackwhale/ctfe-move

Make move CTFEable for simple structs and classes
Clarify DDoc of hasElaborateAssign

Split the overly long sentence in two, otherwise
it's easy to miss the point about auto-generation.
Merge pull request #2056 from blackwhale/elaborate-assign

Clarify DDocs of hasElaborateAssign
Merge pull request #2052 from monarchdodra/copyAssert

Add asserts in Copy (and remove an enforce)
Fixes Issue 5316 - Add character-separated elements support for arrays and associative arrays.
Fix Issue 12494 - to!string(enum) incorrect value
Fix Appender constructor
Merge pull request #2059 from monarchdodra/12494

Fix  Issue 12494 - Regression (2.064): to!string(enum) returns incorrect value
Merge pull request #2049 from AndrejMitrovic/Fix5316

std.getopt: Add character-separated elements support for arrays and associative arrays
Merge pull request #2045 from monarchdodra/appenderConstruct

Fix Appender constructor signature
Use plain uint array for InversionList

Storage for static data was long since compressed so it no longer plays a role at compile-time.
Memory requirements at run-time are modest anyway.
Supply the lacked local import