Merge branch 'jv-char-data'

Conflicts:
	lib/eex/lib/eex/tokenizer.ex
	lib/elixir/lib/file.ex
	lib/elixir/lib/kernel.ex
	lib/elixir/lib/record/extractor.ex
	lib/elixir/lib/string.ex
	lib/ex_unit/lib/ex_unit/doc_test.ex
	lib/mix/lib/mix/archive.ex
	lib/mix/lib/mix/dep/fetcher.ex
	lib/mix/lib/mix/dep/umbrella.ex
Update CHANGELOG
Merge pull request #1984 from pminten/enumerable-count-doc-improvement

Improve Enumerable count/member? docs
Remove some deprecated functions and add missing warnings
Deprecate "groups" in Regex

* `Regex.groups` -> `Regex.names`
* :groups -> :named on `Regex.scan`
* :groups -> :named on `Regex.run`

Signed-off-by: José Valim <jose.valim@plataformatec.com.br>

Conflicts:
	lib/elixir/lib/regex.ex
:named -> :all_names
`Regex.named_captures/2,3` returns a map of binaries <-> values instead
of a keyword

Signed-off-by: José Valim <jose.valim@plataformatec.com.br>

Conflicts:
	lib/elixir/lib/regex.ex
Tidy up some final changes regarding regexes and deprecations
Update CHANGELOG
Merge pull request #2182 from pragdave/make_013_compatible

use 0.13 exunit exception in doctest
Ensure we properly raise on doctest failures
Do not set +fnu by default
Clean up doc tests
Also add a test for teardown failures
Macro.unpipe/1 now returns the pipe position
Emit a warning if running on latin1
Regexes are no longer unicode by default

By making them unicode, it was impossible match on binary streams,
as unicode expects valid unicode strings.
Fix regression on deprecated functions
Deprecate ListDict and access for lists with non-atom keys
Do not add spaces after { and before }

This makes the source code consistent with the result
returned by inspect/2.