Fix Issue #12877: allow uniform() to handle dchar variates

Since [dchar.min, dchar.max] does not cover the full bit range of dchar,
optimizations that work for other integral types will fail here, and
result in illegal unicode points being generated.

This fix avoids breaking any existing calls to uniform() via a twofold
approach:

   * uniform!"[]"(T.min, T.max) will only call uniform!ResultType if
     T is not a dchar;

   * uniform!dchar will not try and use the entire bit range but will
     instead call uniform!"[]"(dchar.min, dchar.max).

Unittests have been added that should prevent such issues from arising
again.
Fix missing program name in std.process.spawnProcessImpl exception message.
Merge pull request #2236 from tramker/bug_process

Fix missing program name in std.process.spawnProcessImpl exception message.
Merge pull request #2235 from WebDrake/uniform-dchar

Fix Issue #12877: allow uniform() to handle dchar variates
Upkeep in outdent

Removed "ctfe_strip", use documented unittest, use "stripLeft" over "strip" (preserve trailing spaces), tweak loop indexing, remove ctfe assert.
Merge pull request #2237 from monarchdodra/outdent

Upkeep in std.string.outdent
Make Rebindable @trusted.
Fix deprecation messages caused by recent changes to Duration.
Merge pull request #2241 from jmdavis/duration

Fix deprecation messages caused by recent changes to Duration.
Merge pull request #2238 from jmdavis/rebindable

Make Rebindable @trusted.
Remove unused WinAPI ANSI function usages.
Issue 12898 - `std.process.browse` expects URL to be encoded in CP_ACP on Windows instead of UTF-8

Use Unicode version of `ShellExecute` in `std.process.browse`.
Also remove needless `ShellExecuteA` declaration.
Use Unicode version of `CreateFileMapping` in `std.mmfile.MmFile` constructor.

It's a bad style to use ANSI WinAPI function and may cause problems in future.
Merge pull request #2242 from denis-sh/get-rid-of-WinAPI-ANSI-functions

Get rid of WinAPI ANSI functions
Make std.datetime.Date @safe.
Make std.datetime.TimeOfDay @safe.
Make std.datetime.DateTime @safe.
Fix property enforcements in `std.range` mixins.
Make time zones @safe.
Make std.datetime.SysTime @safe.