Issue #1448, Mix.Tasks.Compiler.*.manifests returns complete path
Merge pull request #1454 from jwarwick/issue_1448

Issue #1448, Mix.Tasks.Compiler.*.manifests returns complete path
Watch the target directory on compilation
Remove deprecations pre 0.10.0
Support for multiple callbacks in parallel compiler
Support each_module callback on ParallelCompiler
Initial work on ManifestCompiler that tracks dependencies in the manifest for quick compilation
Improve ManifestCompiler to track more dependencies
Put old beam files back if compilation fails
Just preload files if something is stale
Also record aliases as dependencies
Ensure no duplicate keys in the compile.elixir manifest
Simplify translate_apply
Merge branch 'jv-watch-manifest'

This brings smart compilation to mix compile, where
we only recompile files that changed and their dependencies.
Record aliases separatedly from remotes
Add List.keysort

Receives a list of tuples and sorts the items at position `pos` of the tuples
Fix a bug on OptionParser where missing options appeared on the final result
Improve docs for Mix
reverse @__behaviour_docs__

These are top accumlated as module attributes, so are therefore stored
in reverse order to how they were added. When we get them back out,
reverse them again so they're back in the right order.

This is used by ex_doc, and callbacks are listed backwards otherwise
Merge pull request #1461 from madlep/fix_backwards_behaviour_docs

reverse @__behaviour_docs__