Show linked paths and per-release dependencies (#453)
In the graph section of the solution printout, the concrete dependency for each
release that brings in another release is now shown. This may help in
understanding why a release is chosen, particularly when there are different
restrictions on a same crate introduced by different releases.
For the new linked folders with alire metadata, the source folder is shown in
the releases section. Otherwise, such source folders are listed in the
externals section without a concrete release (as we cannot determine a version
for them).
A new test shows this feature and also shows that the solver is able to
downgrade a dependency whenever this is needed to obtain a complete solution.