Small refactoring of cli module

* Return "2" exit code for lint errors. Fixes #212

* Use promise to determine what exit code should we use, it would
simplify testing, since most jscs operations are executed asynchronously

* Remove exit code logic from the reporters

* Move all data files for cli module to subfolder

* Start using sinon

* Change return value of cli module - object with checker
and promise attributes
Make one of the cli test synchronous

It should fix test execution for node 0.8