[POC] Show progress when resolving dependencies

Hi, this is just an illustrative PR for discussion.

When installing dependencies on large-ish projects I can sometimes be waiting for 10 minutes before composer starts to install packages, and the output of composer doesn't indicate any progress. 

I think it would be beneficial to output messages before time-consuming processes begin. These messages could be at the `-v` level.

I would propose passing either the `OutputInterface` to the `Solver` class, or a logging / profiling service which would access the Output by proxy.

The code in this PR produces:

````
Loading composer repositories with package information
 - Adding repository Composer\Repository\ComposerRepository
 - Adding repository Composer\Repository\ComposerRepository
Installing dependencies (including require-dev)
Solving dependencies
 - Setting up installed map
 - Getting rules from rule set generator
 - Checking for root require problems
 - Making assertion rule decisions
 - Running SAT
Nothing to install or update
 - Setting up installed map
 - Getting rules from rule set generator
 - Checking for root require problems
 - Making assertion rule decisions
 - Running SAT
Writing lock file
Generating autoload files
````

(I don't know why the Solver is called twice and it would be nice to identify the repositories which are being added)