Tweak min and max for yet more efficiency

I checked the generated assembly code, and it looks pretty damn good. I've not been able to achieve any better anyways.
Fix issue 12771 - Variant opIndex for static arrays is not implemented.
Constrain isSomeString
Shorten array checks to isArray
Merge pull request #2053 from monarchdodra/maxTweak

Tweak min and max for yet more efficiency
Merge pull request #2203 from monarchdodra/isSomeString

Constrain isSomeString
Add interface test in pointsTo
Re-insert doesPointTo in swap/move
Mark std.stdio.LockingTextWriter.this, ~this and this(this) as @trusted
Merge pull request #2202 from monarchdodra/swapPointsTo

reinsert doesPointTo in swap/move
Fix issue 12828: Fix return type of SimpleTimeZone.utcOffset.
Merge pull request #2219 from jmdavis/datetime

Fix issue 12828: Fix return type of SimpleTimeZone.utcOffset.
Remove now-unneeded workaround for bug# 4866.
Fix functions which are supposed to return by ref in SysTime.

Compiler bugs previously prevented these functions from returning by
ref.
Fix functions which are supposed to return by ref in Date.

Compiler bugs previously prevented these functions from returning by
ref.
Merge pull request #2217 from tom-tan/trusted-stdio-LockingTextWriter-ctor-dtor-postblt

Mark std.stdio.LockingTextWriter.this, ~this and this(this) as @trusted
Merge pull request #2222 from jmdavis/datetime

Remove workarounds for some compiler bugs which were fixed
More ref return fixes in std.datetime now that the compiler allows them.
Merge pull request #2227 from jmdavis/datetime

More ref return fixes in std.datetime now that the compiler allows them.
Supplemental fix for issue 12857

The local template function zeroLen is inferred to @system. So it should not be placed directly under the @safe unittest body.