Ensures String.slice returns a string.

Both String.slice/3 and String.slice/2 now will return empty strings for
impossible or out of bound ranges.
Merge pull request #2412 from christhekeele/empty-string-slice

Ensures String.slice always returns a string
Properly indent tables
Ensures Enum.slice always returns a list.

Both Enum.slice/3 and Enum.slice/2 now will return empty lists for
impossible or out of bound ranges, rather than `nil`.

Fixes #2410.
Reformat unordered lists in all docstrings

List items are marked with a star (*). Bullets marking list elements
must have a 2-space indent. The continuation lines should be indented
by 2 more spaces.

The second and subsequent paragraphs need to be indented 4 spaces
from the beginning of the line to be included in the list item.

The code fragments have to be indented 8 spaces from the beginning
of the line (or 4 spaces from the beginning of the preceding paragraph).

Sublists are marked with a hyphen (-). They follow the rules above
with the difference that their initial indent will be greater
(8 spaces from the beginning of the line).
Add normalize dispatch for Windows volume letters
Improved match and guard
Add missing backticks
fix typo in docstring of Enum.at and Enum.slice
Merge pull request #2418 from jw2013/master

fix typo in docstring of String.at and String.slice
Merge pull request #2414 from christhekeele/empty-range-slice

Ensures Enum.slice always returns a list.
Merge pull request #2416 from chyndman/win-volume-path-normalize

Add normalize dispatch for Windows volume letters
Make `URI.encode*` to work only with binaries
Merge pull request #2419 from lexmag/uri-binaries

Make `URI.encode*` to work only with binaries
Do not match files starting with . in Path.wildcard/2 by default
Remove deprecated on_exit callbacks
Update CHANGELOG
Deprecate previously soft deprecated conversion functions
Improve task log based on @fishcakez feedback
Fix map printing to indent 2 levels, closes #2165