don't build ghci .o library files by default

- default configGHCiLib to False since ghci can load .a files

I think there no need to build .o files for ghci by default:
they just take up extra time and space.
I checked with SimonM and he also thinks this should be ok for all platforms.
Additionally no point to build .o lib files on lower tier archs
without ghci support. :)
Bump versions.
Add GHC build files to .gitignore.
Update unix dependency.
Ensure that the cabal-install logfile gets closed

cabal was failing with:

$ cabal --config-file=/home/hackage-docs/hackage-docs/build-cache/cabal-config install --enable-documentation --enable-tests --haddock-html-location='http://192.168.142.1:8080/package/$pkg-$version/doc' --haddock-option=--built-in-themes --haddock-contents-location='http://192.168.142.1:8080/package/$pkg-$version' --haddock-hyperlink-source --prefix=/home/hackage-docs/hackage-docs/build-cache HUnit-1.2.5.1
Resolving dependencies...
/home/hackage-docs/hackage-docs/build-cache/local.conf.d/package.cache: openBinaryFile: does not exist (No such file or directory)
cabal: /home/hackage-docs/.cabal/logs/HUnit-1.2.5.1.log: resource busy

as it tried to open the log file for reading when it already had it open
for writing:

open("/home/hackage-docs/.cabal/logs/HUnit-1.2.5.1.log", O_WRONLY|O_CREAT|O_NOCTTY|O_APPEND|O_NONBLOCK, 0666) = 3
open("/home/hackage-docs/.cabal/logs/HUnit-1.2.5.1.log", O_RDONLY|O_NOCTTY|O_NONBLOCK) = 5
close(5)                                = 0
close(3)                                = 0
Fix bug where ghc-options would be ignored in profiling/shared builds
Unbreak the test suite

-package-db only exists on GHC >=7.5 so we use (the now deprecated)
 -package-conf flag instead.
Bump dependency on test-framework-quickcheck2

Without the lower bound, test-framework-quickcheck2-0.2.4 is picked
and that version fails to compile against QuickCheck.
Disabled failing unit tests
Get old unit tests to compile again

The test suite is so bitrotted that it's beyond salvaging and it'll be
deleted in a subsequent commit. This commits records the changes
needed to at least get it to compile again.
Get rid of all test code and infrastructure

Remove the bitrotted UnitTest test suite and also no longer used build
infrastructure.
Add more things to .gitignore
Delete more dead test code
Add scaffolding for a new unit test suite
Add missing file
Move ReadP tests from comments in the implementation into an actual UnitTest file.
80-col violation.
Allow marking commands as hidden and make 'win32selfupgrade' a hidden command.

Hidden commands don't show up in 'cabal help' or 'cabal --help' output.
Extend the index format with references to local build trees.

Also implements a (hidden) 'index' command for debugging (likely to be removed
in the future).
Calculate the entry checksum correctly when entryTarPath is Unicode.