Added namedGroups property to Regex struct.

Extended NamedGroupRange to be a random access and forward range, and added length memeber.

Changed name of namedGroups property to namedCaptures
Add workaround to fix issue 10567

Currently VariantN does not support const objects comparison. So just add specialized opCmp member and use cast().
Remove bug 9578 workaround

Because the compiler bug was fixed recently.

---
Revert "Merge pull request #1178 from denis-sh/add-Issue-9578-workaround-to-`std.algorithm.all`"

This reverts commit 8dbfc1a7382792e039c8f1d7f5f5232279dead04, reversing
changes made to 93c724f2a36a798985dc1d82b050899455c8de4c.
Improve byLine doc

Move byLine examples from ByLine to byLine.
Fix LinesReader typo.
Explain that lines will not persist when using a mutable type for Char.
Document parameters.
Merge pull request #1405 from 9rnsr/fix10567

Add workaround to fix issue 10567
Make byLine return an opaque type

File.ByLine is still visible for backwards compatibility, but no longer
documented.
Fix Issue 10607 - DirEntry has no constructor

http://d.puremagic.com/issues/show_bug.cgi?id=10607

Fixes:
auto a = DirEntry("path"); //Correctly works

Simplified code a little bit (Axed _init)

Improved FileException usage
Merge pull request #1385 from blackwhale/named-regex

Added namedGroups property to Regex struct.
Fixing some un-necessary calls to text. Fix comment.
s/forward range/input range/ plus minor fixes
Merge pull request #1408 from ntrel/byLine-doc

Improve byLine doc
Merge pull request #1406 from 9rnsr/remove9578wa

Remove bug 9578 workaround
Fix Issue 10621 - dirEntry is (now) useless
Fix typo in xformat doc
Merge pull request #1407 from monarchdodra/DirEntry

Fix DirEntry string construction and CopyContruction