Logging System + Better Output

* Added a config.js that is responsible of sharing the debugging state with the rest of the tasks.
* Logger object for more consistent logging
* Put plenty of command output under the debug mode to avoid polluting the console output.
* Added more meaningful messages to illustrate what's happening to the developer.
this message should be distinguish. (logger.warn)