Implement flag to clean unused dependencies

This addresses issues #2569
https://github.com/elixir-lang/elixir/issues/2569
Makefile: shorten tip about Unicode embedding time

The estimate about this step taking "up to a minute" really depends on
the machine we're compiling on.  For example, on an old or underpowered
machine, it may take _longer_ than a minute.  So this patch changes the
wording accordingly and puts the reason for the delay at the beginning.
Merge pull request #2648 from sunaku/makefile-message-clarity

Makefile: shorten tip about Unicode embedding time
Improve translator formatting

* Improve application stop reasons
* Include stacktrace in crash reports
Prepend -noshell and friends always within Cygwin

Signed-off-by: José Valim <jose.valim@plataformatec.com.br>
Set -noshell on bin/iex
Merge pull request #2651 from fishcakez/translator_format

Improve translator formatting
Suppress "-s elixir start_cli" for IEx
Merge pull request #2652 from chyndman/elixir-bat-iex-startcli

Suppress "-s elixir start_cli" for IEx
Accept more forms of git versions

Fixes the parsing of “git version 1.9.3 (Apple Git-50)”.
Closes #2653.
Leave it to the application to start Logger after compilation

Closes #2649
Fix build
Ensure aliases are invoked for recursive tasks

Closes #2650
Reply to GenEvent manager from stream right away

This way the GenEvent can start processing the other
handlers, reducing the processing time for each event
from sum(handlers) to max(handlers).
Deprecate functions as collectable
Fix build
Also support :sync mode in GenEvent, make :ack one the default
Check for terminal support from Elixir command line
Check for terminal on both stdout and stderr
Ensure elixir and iex works on MinGW