Fix Issue 4725 - std.algorithm.sum()
Document use of Kahan vs. vanilla summation
Added LREF to sum in reduce
pairwise sum returns double for ranges with float elements
Fix Issue 12003 - std\zip.d(421): Deprecation
Remove package function `defaultInit`

It was a hack for the compiler bugs around T.init. Now the they are properly fixed, so the unused helper function is actually unnecessary.
Fix predicate template implementations in std.traits and std.range

Use T.init property instead of void initializer, because it will work even if T is const or immutable type.

I must change a part of unit test for the bug 6935, because we cannot support ranges which overrides init property.
Add a test case isAssignable!(void[1], void[1])
fix Issue 12071 - Algebraic won't take delegate returning structure

Use `Variant` rather than `VariantN` in order to pack arguments and returned value in opCall.
Regression Test 8282 - new Array!T

This one doesn't have an equivalent test, so adding this to make sure the bug never comes back. The actual issue was fixed in 2.063.

https://d.puremagic.com/issues/show_bug.cgi?id=8282
Fixes Issue 7666 - Implement reverse property for Tuple.
Fix Issue 5753 - Disallow map with void function.

https://d.puremagic.com/issues/show_bug.cgi?id=5753
Fix Issue 7287 - BinaryHeap example

Two changes:

1. Fixed the array in the final assert. Not sure where the original array came from -- not Intro to Algorithms, I checked my copy!
2. Moved to documented unit test so we make sure it actually passes.

https://d.puremagic.com/issues/show_bug.cgi?id=7287
Minor style updates.
Merge pull request #1931 from Poita/bug7287

Fix Issue 7287 - BinaryHeap example
Merge pull request #1927 from Poita/bug8282

Regression Test 8282 - new Array!T
Add uniform example for enums.
Merge pull request #1932 from AndrejMitrovic/UniformDocs

Add uniform example for enums.
Merge pull request #1917 from Poita/bug5753

Fix Issue 5753 - Disallow map with void function.
Fixup [un|minimally]InitializedArray

Solves:
* http://d.puremagic.com/issues/show_bug.cgi?id=9803 : minimallyInitializedArray fails past "1D" depth
* http://d.puremagic.com/issues/show_bug.cgi?id=10637 : minimallyInitializedArray: postblit on non-initialized
* http://d.puremagic.com/issues/show_bug.cgi?id=10847 : uninitializedArray accepts arguments which make it fail internally

Improvements also include:
* Documented as nothrow, and weakly pure.
* Works with 0 args (returns an empty slice).
* All args are pre-emptivelly changed to size_t, to avoid template over-instantiation.