Solaris changes for std.file and std.socket.

std.file: Add implementation for thisExePath(), fix struct DirEntry
std.socket: Add implementation for formatSocketError
use emplaceRef in join

And remove old trustedAllocateArray.
uninitializedArray is already trusted.
Fix deprecation warning in std.concurrency.

Replace false with Fiber.Rethrow.no to remove the warning.
use a Flag!"throwOnError" for Curl.perform
allow to specify throwOnError for high-level wrappers

- in HTTP, FTP, SMTP perform
Merge pull request #2760 from redstar/concurrency

Fix deprecation warning in std.concurrency.
add JSONValue.isNull

- short-access similar to array, str, object...
- val.type == JSON_TYPE.NULL is fairly verbose
Merge pull request #2750 from MartinNowak/curl2

ThrowOnError flag for curl
Merge pull request #2762 from MartinNowak/json

add JSONValue.isNull
Include NullSink in std.range ddocs.

Partial fix for makefile to build std.range docs, that was broken after
std.range was split. This is only a partial fix; the full fix will have
to be done as part of [issue 13766] (https://issues.dlang.org/show_bug.cgi?id=13766).
nothrow for Schedulder

- require nothrow for thisInfo, yield

- make Condition methods nothrow
Merge pull request #2763 from quickfur/nullsink_ddoc

Include NullSink in std.range ddocs.
Merge pull request #2747 from 9il/join2

use emplaceRef in join
std.range: constraints => primitives

See discussion and voting in #2661
specialization of std.typecons.Proxy for classes

using selective import

remove nonsense code

integration of static this.

add a comment

avoiding some warnings

remove InvalidTypeException

improve readability
Merge pull request #2759 from redstar/solaris2

Solaris changes for std.file and std.socket.
tweak predSwitch ddoc
tweak clamp ddoc

- sort the Comparison section
- fix typo
Merge pull request #2765 from 9il/rename

std.range: constraints => primitives
Merge pull request #2740 from garlic-flavor/master

std.typecons.Proxy inside classes