Add a ForceGlobalInstall argument to configPackageDB'.

We use userInstallDirs in sandbox mode to prevent cabal-install from doing
unnecessary things like invoking itself via 'sudo' (see commit
7b2e3630f2ada8a56bf9100144e1bb9acbe6dc6a and 'rootCmd' in D.C.Install), but in
this particular case we want userInstall to be False to prevent UserPackageDB
from being added to the package DB stack (see #1183 and interpretPackageDbFlags
in D.S.Configure).
Add helpers for working with the PackageEnvironment type.

These allow us to work uniformly with @PackageEnvironment@ and @SavedConfig@,
thus reducing boilerplate.
Merge the 'configure' and 'sandbox-configure' commands.
Comment.