WiP for compiling of erlang/leex/yecc source files

This is (WiP)work in progress, but I would like to get a feedback, review and tips, how one or other thing better to do, because this is my second or third pull request, and first "not a simple bug fix" commit to an Open Source project.

This change has:
* checking of erlang sorces and dependencies(like .hrl files) for changes before compiling
* error and warning output messages by erlang compiling(if you have an error, you will see, which one in a readable way) with relative path to your project
* compiling of leex and yecc files too(with error output too)

This comment has some code duplication, that I personaly don't like... And I want to remove it in a beautifull and understandable way(like in leex, yecc compilers, that do the same work with one exception). May be move code in Mix.Tasks.Compile with this arguments and simply call from leex and yecc compile tasks a generic task?
This comment doesn't have:
1) documentation
2) tests, I have checked, that it working with some erlang projects,but this have not tests yet
3) there are some code duplication, that I want to eliminate in a beautiful way

 I will be very happy for review and feedback!