Issue 10269 - RandomSample should use popFrontExactly, not popFrontN, when skipping across input range

This small tweak has been accompanied by a couple of extra checks
to ensure that users do not request more sample points than are
available in the input, which could otherwise be the source of
exceptions.

There exists one remaining case where RandomSample may fail: if it
is given an InputRange without the .length property, and the user
indicates that the total number of items available is greater
than what the InputRange actually contains.  In this case an
exception is thrown from std.array.popFront() line 450,
"Attempting to popFront() past the end of an array", or from
std.array.front() line 624, "Attempting to fetch the front of an
empty array."
RandomSample assertions to ensure skip sizes respect number of items remaining.
Indentation corrections. :-(
Fix 10355: fullyQualifiedName was handling enums as other basic types
Fix 10355: Moved test case to proper block, added one for enum member
Adjust floating point formatting tests for MinGW.

As far as I am aware, the C standard doesn't make any
guarantees about what the leading digit in the hex formats
is, nor about the number of exponent digits displayed by
default.

We should look into replacing the functions with our own
implementations to provide consistent behavior independent
of the host C runtime library, and potentially also allowing
the functionality to be used from CTFE.
Merge pull request #1313 from klickverbot/mingw-format

Adjust floating point formatting tests for MinGW
Fix up spacing and brackets for if statements.
Simplify assert conditions.
Fix Issue 9975 - pointsTo asserts because of false pointer in union
More formatting corrections.
Spread long statements across several lines.
Merge pull request #1342 from WebDrake/randomsample-popfront

Issue 10269 - RandomSample should use popFrontExactly, not popFrontN ...
Improve documentation/testing for pointsTo
Merge pull request #1277 from monarchdodra/9975

Fix Issue 9975 - pointsTo asserts because of false pointer in union
fix Issue 10377 - std.typecons.wrap doesn't consider private members
Fix shared library SONAME
Fix std.exception.ifThrown tests in release mode.

As the unit test is not @safe, bounds checking is disabled
when building with -release.
Supplemental fix for issue 10334
Merge pull request #1352 from klickverbot/fix-exception-test

Fix std.exception.ifThrown tests in release mode.