init: generate build-depends with >=x.x && <x.y syntax instead of ==x.*

fixes #1329.
Add a function for reading the contents of a single package DB.

'getInstalledPackages' requires to pass in a 'PackageDBStack'.
cabal-install: put the Paths_cabal_install.hs and Paths_Cabal.hs in place as expected
disable hackage's preferred-versions (as we don't use it when merge ebuilds)

hackage.haskell.org/00-index.tar contains preferred-versions for some interesting
packages. For now it's 'base-3'.

Otherwise depends generated by hackport differ from ones pulled by ./Setup.hs.
cabal/cabal-install: renamed D.C.Exception -> D.C.ExceptionCI to avoid clash with Cabal's one

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Fix error messages with "cabal update" -> "hackport update" Same fix as marty.rosenberg@gmail.com once did for cabal-install-0.8.2, which we now are replacing.
cabal/cabal-install: renamed D.C.Exception -> D.C.ExceptionCI to avoid clash with Cabal's one

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
forbid cabal to check for self updates