Attempt to make error messages more useful

Currently, the installer does not differentiate between all the errors that could happen while uncompressing the file. This PR catches some of the exceptions thrown by `Distill` and tries to give more useful messages for the following situations:

* Downloaded file is empty
* Downloaded file is corrupted
* Target directory is not writable

These exceptions are available for `Distill >= 0.9`, so the `composer.json` file has been updated too.
Symfony uses `use` statements for each single class/exception. I think it's good to stick with this in the installer code too.