[FrameworkBundle] Refactored assets:install command, tweaked output

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Before:
![screenshot from 2014-12-21 09 27 48](https://cloud.githubusercontent.com/assets/162986/5517698/3f6e62e2-88f8-11e4-9d9f-f90877058431.png)

After:
![screenshot from 2014-12-21 03 41 21](https://cloud.githubusercontent.com/assets/162986/5517700/52892d4e-88f8-11e4-8944-3461c4318b06.png)
![screenshot from 2014-12-21 03 37 20](https://cloud.githubusercontent.com/assets/162986/5517702/58ea047e-88f8-11e4-8bef-40c65c130012.png)

I think the output is much readable this way. It slightly changes the behaviour as well, instead of falling back to hard copy when relative symlink does not work it will fall back to absolute symlink and then to hard copy. When hard copying fails it does not stop immediately. I'm not sure about BC and it can be a bug fix as well as the code was superfluous in some cases inside the catch block [@AssetsInstallCommand.php#L110](https://github.com/symfony/symfony/blob/c9129dd70f4c5ea5e28bc3f6c0de3dbd669e0a21/src/Symfony/Bundle/FrameworkBundle/Command/AssetsInstallCommand.php#L110) IMHO.
That is not enough, `$fs->symlink()` will throw an exception when something gets wrong, but it can create broken links. We don't want broken links here so the check required after every `$fs->symlink()` call.