Add dependency-graph information to `printPlan` output
Add dependency-graph information to `printPlan` output

This improves the install-plan reporting in `cabal install -v2`'s output
to include reverse-dependencies, thereby giving valuable information why
a package was included in the install-plan to begin with.

Moreover, this also disables line-wrapping for the install-plan for
verbosity `verbose` and greater, to make the output easier to parse
for humans as well as computers

Example output for `cabal install --dry -v2 http-client`:

  In order, the following would be installed:
  base64-bytestring-1.0.0.1 (via: http-client-0.4.11.2) (new package)
  data-default-class-0.0.1 (via: http-client-0.4.11.2 cookie-0.4.1.5) (new package)
  mtl-2.2.1 (via: exceptions-0.8.0.2 parsec-3.1.9) (new package)
  network-2.6.0.2 (via: http-client-0.4.11.2 streaming-commons-0.1.12) (new package)
  old-locale-1.0.0.7 (via: cookie-0.4.1.5) (new package)
  random-1.1 (via: http-client-0.4.11.2 streaming-commons-0.1.12) (new package)
  stm-2.4.4 (via: streaming-commons-0.1.12 exceptions-0.8.0.2) (new package)
  text-1.2.0.4 -integer-simple (via: http-client-0.4.11.2 streaming-commons-0.1.12 parsec-3.1.9 mime-types-0.1.0.6 http-types-0.8.6 case-insensitive-1.2.0.4 hashable-1.2.3.2 cookie-0.4.1.5 blaze-builder-0.4.0.1) (new package)
  blaze-builder-0.4.0.1 (via: http-client-0.4.11.2 streaming-commons-0.1.12 http-types-0.8.6 cookie-0.4.1.5) (new package)
  cookie-0.4.1.5 (via: http-client-0.4.11.2) (new package)
  hashable-1.2.3.2 (via: case-insensitive-1.2.0.4) (new package)
  case-insensitive-1.2.0.4 (via: http-client-0.4.11.2 http-types-0.8.6) (new package)
  http-types-0.8.6 (via: http-client-0.4.11.2) (new package)
  mime-types-0.1.0.6 (via: http-client-0.4.11.2) (new package)
  parsec-3.1.9 (via: network-uri-2.6.0.1) (new package)
  network-uri-2.6.0.1 (via: http-client-0.4.11.2) (new package)
  transformers-compat-0.4.0.4 (via: exceptions-0.8.0.2) (new package)
  exceptions-0.8.0.2 (via: http-client-0.4.11.2) (new package)
  zlib-0.6.1.0 (via: streaming-commons-0.1.12) (new package)
  streaming-commons-0.1.12 (via: http-client-0.4.11.2) (new package)
  http-client-0.4.11.2 (new package)

(cherry picked from commit c0b3c7f1b6ae7bb7663a2c18578ede95d6a40919)

gbaz/cabal,thomie/cabal,headprogrammingczar/cabal,kolmodin/cabal,bennofs/cabal,lukexi/cabal,Heather/cabal,themoritz/cabal,themoritz/cabal,sopvop/cabal,kolmodin/cabal,lukexi/cabal,headprogrammingczar/cabal,sopvop/cabal,edsko/cabal,bennofs/cabal,sopvop/cabal,mydaum/cabal,Heather/cabal,edsko/cabal,themoritz/cabal,garetxe/cabal,mydaum/cabal,garetxe/cabal,gbaz/cabal,thomie/cabal