Fix finding a composer executable

This patch makes the following improvements for finding a composer
executable:
1. The check if composer is available on the executable path should
check the exit code instead of the output. The assumption that the
output will be empty if there is no executable is wrong. Checking the
exit code is more reliable.
2. The usage of file_put_contents() to download composer.phar was wrong.
Instead of downloading the composer.phar, a text file with the download
URL was created. This is now fixed.
3. The patch makes sure that the downloaded composer.phar will be
executable on UNIX systems.
4. The getComposerExecutable() method now returns the full path of the
downloaded or existing composer.phar, which makes it executable on UNIX
systems too. Just 'composer.phar' cannot execute the file from the
current directory. It must be at least './composer.phar'.
5. The error message if composer fails now includes the exit code and
the last line of the output.
Add requirements section to README.md

- Pointing to composer.json
Merge branch 'hotfix/requirements'

Close #18
Merge pull request #17 from kaloyan-raev/find-composer

Fix finding a composer executable
Added the unit tests
Fixed the php-cs
Merge pull request #19 from ezimuel/feature/tests

Added the unit tests + fixed application.config.php when modules specified
[#19] Added PHPUnit toolchain

- Added phpunit.xml
- Added phpunit to Travis-CI configuration
[#19] Fixed failing unit tests

Test failures were due to:

- missing `vendor/README.md` file in TestAsset application. Added this, and test
  passed.
- `.gitignore` rule that we were testing meant a necessary file was not present!
  Renamed the file `.gitignore.dist`, and added setUp/tearDown functionality to
  copy it to `.gitignore` and remove it during the testing process. Test now
  passes.
Merge branch 'hotfix/19'

Close #19
Execute composer.phar with the PHP binary running zf-deploy

If there is no PHP in the executable path then calling composer.phar as
executable fails. On Windows even a popup dialog appears for the user to
find the program to execute the phar.

This change resolves the issue by prepending the PHP binary path to the
command. However, this is not done in case 'composer' is available in
the executable path. In this case, we assume there is also PHP
available.