Added std.range.only - range of a single element.

This adds range type `Only!T` and helper function `only!T(T)`. This is a range that iterates a single value, useful when some interface requires a range, but you only have a single value.
Use RangeError + length optimisation for Only!T
Using version(D_NoBoundsCheck) for Only!T
New docs, examples, added asserts for Only!T
Voldemortification of std.range.only
Changed only.Result to static struct
Undoing formatting error
Merge pull request #1046 from Poita/only

Added std.range.only - range of a single element.
Remove stray // from ddoc.
Complete the fix for issue 8302.

The original fix (e6621da89985ca9688f758c5fffd00438050bfd4) missed the
second variant of std.file.dirEntries.
Merge pull request #1051 from quickfur/std_file_ddoc

Improve std.file.dirEntries ddoc
Fix for issue# 8890: commonPrefix does not handle unicode correctly.

It was returning partial code points if the first few code units in a
code point matched but not the entire code point.
Slight tweak to commonPrefix's template constraint.
Fix commonPrefix so that it can mix strings and other ranges.

The fix for 8890 made it so that commonPrefix could no longer compare
strings with ranges of other types. This fixes that.
Merge pull request #889 from jmdavis/8890

Fix for issue# 8890: commonPrefix does not handle unicode correctly.