Make use of newer Cabal features
Newer Cabal has some features that would be nice to use in the build scripts, once it's time to increase lower version bounds.
Cabal 1.20 adds
BuildFlags.buildNumJobs, which uses cabal-install's
--jobsargument and defaults to the number of CPUs. This is better than having our own
QTAH_BUILD_JOBSthat defaults to 1.
Cabal 1.24 adds per-component auto-generated directories that might allow us to start generating sources in those directories instead of
src. See Cabal issue 3529. But we might still run into Cabal issue 719 (sdist requires modules listed in
*.cabalto exist in
src), which we're hacking around in