Omit comments from the default cabal.sandbox.config.

Since this file is not intended to be edited by hand, don't print the default
values for empty fields in comments (just like cabal-dev).
Remove duplication.

Generalise 'ppField' and friends and remove customised copies from
D.C.PackageEnvironment.
Re-enable -threaded for the cabal-install exe.

I forgot to enable -threaded for the cabal-install exe when I split
cabal-install into an exe and a library part. Thanks to Tuncer Ayaz for the
heads-up.
Replace the 'unpack' command with a more general 'get'.

'cabal get PACKAGE' is the new name of 'cabal unpack'.

'cabal get --source-repository' reads the source-repositories from a package's
description, determines which VCS to use, and then creates a local repository or
branch of the package's repository.

'cabal get --source-repository=[head|this|...]' additionally allows to specify
which source-repository to use.

Based on the code originally written by John Millikin <jmillikin@gmail.com>.
Remove duplication between 'unpack' and 'fork'.
Support the repo kind argument to '--source-repository'.
Make 'unpack' a (hidden, deprecated) alias for 'get'.
Merge pull request #1075 from 23Skidoo/cabal-get

Replace the 'unpack' command with a more general 'get'.
Remove DefaultSetup.hs

My investigation suggests it became unnecessary for the build with
revision 21dc55788a15166b00f3e653ebd70a22e27c9d1a (named
DefaultSetup.lhs at the time) but has hung around ever since.
Merge pull request #1180 from benmachine/springclean

Remove DefaultSetup.hs