fix issue of missing Paths_<package_name>

Paths_hello is generated by cabal during the configure stage. With our
override, this step gets skipped and we get a compilation error. So we
need the override to trigger the configuration and build steps again.

I'm not using substitute because cabal was complaining of unrecognized
arguments, presubably because arguments meant for `cabal test` were
being passed to `cabal configure` and `cabal build`. Now I'm a bit
concerned about throwing away the user's arguments...
explain optional lines
extra step to install dependencies
complete rewrite.

I added some logging code, and that allowed me to see that I was
misunderstanding the relationship between cabal, Setup.hs, and `args`.
I added a comment explaining that, and I rewrote the solution. It's much
simpler now, it supports all the previous corner cases, *and* it doesn't
lose any user arguments!