New license-files field.

Based closely on the patches by Mathieu Boespflug <mboes@cs.mcgill.ca>

This field is intended to be used instead of (or in addition to) the
normal 'license-file' field by packages that have multiple files for
their license material. This is useful when eg the license is
supplemented by additional permissions and/or conditions. Notably,
the LGPL is structured in this way: it amends the GPL with additional
permissions, therefore one should distribute both the GPL in COPYING
and the LGPL in COPYING.LESSER.

So we keep both the license-file and license-files fields (rather than
deprecating one) and packages can use either or a mixture.
Merge pull request #1642 from dcoutts/mboes-master

New license-files field.
Remove ambiguous import of 'catch'

Running 'cabal install Cabal/ cabal-install/' from the latest git version resulted in:

Distribution/Client/Compat/Process.hs:41:5:
    Ambiguous occurrence `catch'
    It could refer to either `Prelude.catch',
                             imported from `Prelude' at Distribution/Client/Compat/Process.hs:16:8-41
                             (and originally defined in `System.IO.Error')
                          or `Control.Exception.catch',
                             imported from `Control.Exception' at Distribution/Client/Compat/Process.hs:20:37-41
                             (and originally defined in `Control.Exception.Base')


This pull requests fixes that.
Merge pull request #1644 from djv/patch-4

Remove ambiguous import of 'catch'
Unbreak the build on GHC 7.6.3.

See #1644.