diff --git a/.mailmap b/.mailmap
new file mode 100644
index 0000000000000000000000000000000000000000..bafa4033bb3bf9247223e7e02a56bb9567ce508e
--- /dev/null
+++ b/.mailmap
@@ -0,0 +1,107 @@
+# See 'git help shortlog' for more details.
+# Formats: Proper Name [<proper@email.xx> [Commit Name]] <commit@email.xx>
+#
+# Show result: 'git shortlog -se'.
+# Should be empty list: 'git shortlog -se | cut -f2 | cut -d'<' -f1 | uniq -d'.
+
+Adam Langley                <agl@imperialviolet.org>
+Alistair Bailey             <alistair@abayley.org>                 alistair <alistair@abayley.org>
+Alson Kemp                  <alson@alsonkemp.com>                  alson <alson@alsonkemp.com>
+Andres Löh                  <andres.loeh@gmail.com>
+Andres Löh                  <andres.loeh@gmail.com>                <andres@cs.uu.nl>
+Andres Löh                  <andres.loeh@gmail.com>                <ksgithub@andres-loeh.de>
+Andres Löh                  <andres.loeh@gmail.com>                <mail@andres-loeh.de>
+Andres Löh                  <andres.loeh@gmail.com>                <andres@well-typed.com>
+Audrey Tang                 <audreyt@audreyt.org>                  audreyt <audreyt@audreyt.org>
+Austin Seipp                <aseipp@pobox.com>
+Austin Seipp                <aseipp@pobox.com>                     <aseipp@well-typed.com>
+Austin Seipp                <aseipp@pobox.com>                     austin seipp <as@0xff.ath.cx>
+Ben Gamari                  <ben@smart-cactus.org>
+Ben Gamari                  <ben@smart-cactus.org>                 <ben@well-typed.com>
+Ben Gamari                  <ben@smart-cactus.org>                 <bgamari.foss@gmail.com>
+Ben Millwood                <thebenmachine+git@gmail.com>          <haskell@benmachine.co.uk>
+Benedikt Huber              <benedikt.huber@gmail.com>             benedikt.huber <benedikt.huber@gmail.com>
+Benno Fünfstück             <benno.fuenfstueck@gmail.com>          <bneno.fuenfstueck@gmail.com>
+Björn Bringert              <bjorn@bringert.net>
+Björn Bringert              <bjorn@bringert.net>                   bjorn <bjorn@maggie>
+Björn Bringert              <bjorn@bringert.net>                   bringert <bringert@cs.chalmers.se>
+Bram Schuur                 <bramschuur@gmail.com>
+Brent Yorgey                <byorgey@gmail.com>                    <byorgey@cis.upenn.edu>
+Brian Smith                 <brianlsmith@gmail.com>                brianlsmith <brianlsmith@gmail.com>
+David Waern                 <davve@dtek.chalmers.se>               David Waern <unknown>
+Duncan Coutts               <duncan@community.haskell.org>
+Duncan Coutts               <duncan@community.haskell.org>         <Duncan Coutts duncan@community.haskell.org>
+Duncan Coutts               <duncan@community.haskell.org>         <duncan.coutts@worc.ox.ac.uk>
+Duncan Coutts               <duncan@community.haskell.org>         <duncan@community.haskell.org>
+Duncan Coutts               <duncan@community.haskell.org>         <duncan@haskell.org>
+Duncan Coutts               <duncan@community.haskell.org>         <duncan@well-typed.com>
+Duncan Coutts               <duncan@community.haskell.org>         unknown <unknown> # 04e9fcc80bc68b72126e33b20f08050df28e727d
+Edward Z. Yang              <ezyang@cs.stanford.edu>               <ezyang@mit.edu>
+Einar Karttunen             <ekarttun@cs.helsinki.fi>
+Ganesh Sittampalam          <ganesh.sittampalam@credit-suisse.com> <ganesh@earth.li>
+Geoff Nixon                 <geoff-codes@users.noreply.github.com> <geoff.nixon@aol.com>
+Gershom Bazerman            <gershomb@gmail.com>
+Gershom Bazerman            <gershomb@gmail.com>                   U-CIQDEV\gbazerman <gbazerman@GBAZERMAN-T35.ciqdev.com>
+Gershom Bazerman            <gershomb@gmail.com>                   gbaz <gershomb@gmail.com>
+Gershom Bazerman            <gershomb@gmail.com>                   Gershom <gershom@mbp.local>
+Gleb Alexeev                <gleb.alexeev@gmail.com>
+Gleb Alexeev                <gleb.alexeev@gmail.com>               gleb.alexeev <gleb.alexeev@gmail.com>
+Gwern Branwen               <gwern0@gmail.com>                     gwern0 <gwern0@gmail.com>
+Heather                     <heather@live.ru>                      <Heather@cynede.net>
+Heather                     <heather@live.ru>                      <Heather@users.noreply.github.com>
+Henning Günther             <der_eq@freenet.de>
+Henning Thielemann          <lemming@henning-thielemann.de>        <haskell@henning-thielemann.de>
+Henning Thielemann          <lemming@henning-thielemann.de>        cabal <cabal@henning-thielemann.de>
+Ian Lynagh                  <igloo@earth.li>                       <ian@well-typed.com>
+Isaac Potoczny-Jones        <ijones@syntaxpolice.org>
+JP Moresmau                 <jp@moresmau.fr>
+Jake Wheat                  <jakewheatmail@gmail.com>
+Jean-Philippe Bernardy      <jeanphilippe.bernardy@gmail.com>      jeanphilippe.bernardy <jeanphilippe.bernardy@gmail.com>
+Jens Petersen               <juhpetersen@gmail.com>                <juhp@community.haskell.org>
+Jens Petersen               <juhpetersen@gmail.com>                <petersen@haskell.org>
+Jens Petersen               <juhpetersen@gmail.com>                <petersen@redhat.com>
+Jeremy Shaw                 <jeremy.shaw@linspireinc.com>
+Jeremy Shaw                 <jeremy.shaw@linspireinc.com>          <jeremy@n-heptane.com>
+Jim Burton                  <jim@sdf-eu.org>
+Joel Stanley                <intractable@gmail.com>
+Joeri van Eekelen           <tchakkazulu@gmail.com>
+John D. Ramsdell            <ramsdell@mitre.org>
+John Dias                   <dias@eecs.harvard.edu>                dias <dias@eecs.harvard.edu>
+Josh Hoyt                   <josh.hoyt@galois.com>
+Judah Jacobson              <judah.jacobson@gmail.com>
+Jürgen Nicklisch-Franken    <jnf@arcor.de>
+Keegan McAllister           <mcallister.keegan@gmail.com>          mcallister.keegan <mcallister.keegan@gmail.com>
+Krasimir Angelov            <kr.angelov@gmail.com>
+Krasimir Angelov            <kr.angelov@gmail.com>                 ka2_mail <ka2_mail@yahoo.com>
+Lemmih                      <lemmih@gmail.com>
+Lennart Kolmodin            <kolmodin@gmail.com>                   <kolmodin@dtek.chalmers.se>
+Lennart Kolmodin            <kolmodin@gmail.com>                   <kolmodin@gentoo.org>
+Lennart Spitzner            <lsp@informatik.uni-kiel.de>
+Malcolm Wallace             <Malcolm.Wallace@me.com>               Malcolm.Wallace <Malcolm.Wallace@cs.york.ac.uk>
+Mark Weber                  <marco-oweber@gmx.de>                  marco-oweber <marco-oweber@gmx.de>
+Martin Sjögren              <msjogren@gmail.com>                   md9ms <md9ms@mdstud.chalmers.se>
+Mikhail Glushenkov          <mikhail.glushenkov@gmail.com>         <c05mgv@cs.umu.se>
+Mikhail Glushenkov          <mikhail.glushenkov@gmail.com>         <the.dead.shall.rise@gmail.com>
+Neil Mitchell               <ndmitchell@gmail.com>                 Neil Mitchell <unknown>
+Niklas Broberg              <niklas.broberg@gmail.com>             <d00nibro@chalmers.se>
+Niklas Broberg              <niklas.broberg@gmail.com>             <git@nand.wakku.to>
+Peter Higley                <phigley@gmail.com>
+Peter Simons                <simons@cryp.to>
+Peter Trško                 <peter.trsko@gmail.com>                Peter Trsko <peter.trsko@ixperta.com>
+Philipp Schuster            <pschuster@uni-koblenz.de>
+Randy Polen                 <randen@users.noreply.github.com>
+Ryan Scott                  <ryan.gl.scott@gmail.com>              <ryan.gl.scott@ku.edu>
+Samuel Gélineau             <gelisam+github@gmail.com>             Samuel Gélineau <gelisam+github@gmail.com>
+Sergei Trofimovich          <slyfox@community.haskell.org>         <slyfox@gentoo.org>
+Sigbjorn Finne              <sof@galois.com>
+Simon Marlow                <marlowsd@gmail.com>                   <simonmar@microsoft.com>
+Simon Marlow                <marlowsd@gmail.com>                   <smarlow@fb.com>
+Simon Peyton Jones          <simonpj@microsoft.com>
+Simon Peyton Jones          <simonpj@microsoft.com>                simonpj <simonpj@microsoft/com>
+Stephen Blackheath          <stephen.blackheath@ipwnstudios.com>   <grossly.sensitive.stephen@blacksapphire.com>
+Stephen Blackheath          <stephen.blackheath@ipwnstudios.com>   <oversensitive.pastors.stephen@blacksapphire.com>
+Stephen Blackheath          <stephen.blackheath@ipwnstudios.com>   rubbernecking.trumpet.stephen <rubbernecking.trumpet.stephen@blacksapphire.com>
+Sven Panne                  <sven.panne@aedion.de>
+Thomas M. DuBuisson         <thomas.dubuisson@gmail.com>
+Thomas M. DuBuisson         <thomas.dubuisson@gmail.com>           Thomas M. DuBuisson <tommd@galois.com>
+Thomas Schilling            <nominolo@gmail.com>                   <nominolo@googlemail.com>
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000000000000000000000000000000000000..8b2e762bb39bd203bd2e18d225239763ad959d5c
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,246 @@
+(cdep)illabout           <cdep.illabout@gmail.com>
+Abhinav Gupta            <mail@abhinavg.net>
+Adam Bergmark            <adam@bergmark.nl>
+Adam C. Foltzer          <acfoltzer@galois.com>
+Adam Gundry              <adam@well-typed.com>
+Adam Langley             <agl@imperialviolet.org>
+Adam Sandberg Eriksson   <adam@sandbergericsson.se>
+Albert Krewinkel         <tarleb@moltkeplatz.de>
+Alexander Kjeldaas       <alexander.kjeldaas@gmail.com>
+Alexander Vershilov      <alexander.vershilov@gmail.com>
+Alistair Bailey          <alistair@abayley.org>
+Alson Kemp               <alson@alsonkemp.com>
+Andrea Vezzosi           <sanzhiyan@gmail.com>
+Andres Löh               <andres.loeh@gmail.com>
+Andrés Sicard-Ramírez    <andres.sicard.ramirez@gmail.com>
+Angus Lepper             <angus.lepper@gmail.com>
+Antoine Latter           <aslatter@gmail.com>
+Anton Dessiatov          <anton.dessiatov@gmail.com>
+Antonio Nikishaev        <a@lelf.me>
+Arun Tejasvi Chaganty    <arunchaganty@gmail.com>
+Atze Dijkstra            <atze@cs.uu.nl>
+Audrey Tang              <audreyt@audreyt.org>
+Austin Seipp             <aseipp@pobox.com>
+Bardur Arantsson         <bardur@scientician.net>
+Bas van Dijk             <v.dijk.bas@gmail.com>
+Ben Armston              <ben.armston@googlemail.com>
+Ben Doyle                <benjamin.peter.doyle@gmail.com>
+Ben Gamari               <ben@smart-cactus.org>
+Ben Millwood             <thebenmachine+git@gmail.com>
+Benedikt Huber           <benedikt.huber@gmail.com>
+Benjamin Herr            <ben@0x539.de>
+Benno Fünfstück          <benno.fuenfstueck@gmail.com>
+Bertram Felgenhauer      <int-e@gmx.de>
+Björn Bringert           <bjorn@bringert.net>
+Björn Peemöller          <bjp@informatik.uni-kiel.de>
+Bob Ippolito             <bob@redivi.com>
+Bram Schuur              <bramschuur@gmail.com>
+Brent Yorgey             <byorgey@gmail.com>
+Brian Smith              <brianlsmith@gmail.com>
+Bryan O'Sullivan         <bos@serpentine.com>
+Bryan Richter            <bryan.richter@gmail.com>
+Carter Tazio Schonwald   <carter.schonwald@gmail.com>
+Chris Allen              <cma@bitemyapp.com>
+Chris Wong               <lambda.fairy@gmail.com>
+Christiaan Baaij         <christiaan.baaij@gmail.com>
+Clemens Fruhwirth        <clemens@endorphin.org>
+Clint Adams              <clint@debian.org>
+Conal Elliott            <conal@conal.net>
+Curtis Gagliardi         <curtis@curtis.io>
+Dan Burton               <danburton.email@gmail.com>
+Daniel Buckmaster        <dan.buckmaster@gmail.com>
+Daniel Trstenjak         <daniel.trstenjak@gmail.com>
+Daniel Velkov            <norcobg@gmail.com>
+Daniel Wagner            <daniel@wagner-home.com>
+Danny Navarro            <j@dannynavarro.net>
+David Feuer              <David.Feuer@gmail.com>
+David Fox                <dsf@seereason.com>
+David Lazar              <lazar6@illinois.edu>
+David Luposchainsky      <dluposchainsky@gmail.com>
+David McFarland          <corngood@gmail.com>
+David Terei              <davidterei@gmail.com>
+David Waern              <davve@dtek.chalmers.se>
+Dino Morelli             <dino@ui3.info>
+Dmitry Astapov           <dastapov@gmail.com>
+Dominic Steinitz         <dominic@steinitz.org>
+Don Stewart              <dons@galois.com>
+Doug Beardsley           <mightybyte@gmail.com>
+Duncan Coutts            <duncan@community.haskell.org>
+Echo Nolan               <echo@echonolan.net>
+Edsko de Vries           <edsko@well-typed.com>
+Edward Z. Yang           <ezyang@cs.stanford.edu>
+Einar Karttunen          <ekarttun@cs.helsinki.fi>
+Eric Kow                 <eric.kow@gmail.com>
+Eric Seidel              <gridaphobe@gmail.com>
+Erik Hesselink           <hesselink@gmail.com>
+Erik de Castro Lopo      <erikd@mega-nerd.com>
+Esa Ilari Vuokko         <ei@vuokko.info>
+Eugene Sukhodolin        <eugene@sukhodolin.com>
+Eyal Lotem               <eyal.lotem@gmail.com>
+Fabián Orccón            <fabian.orccon@pucp.pe>
+Florian Hartwig          <florian.j.hartwig@gmail.com>
+Fujimura Daisuke         <me@fujimuradaisuke.com>
+Gabor Greif              <ggreif@gmail.com>
+Gabor Pali               <pali.gabor@gmail.com>
+Ganesh Sittampalam       <ganesh.sittampalam@credit-suisse.com>
+Geoff Nixon              <geoff-codes@users.noreply.github.com>
+Gershom Bazerman         <gershomb@gmail.com>
+Getty Ritter             <gdritter@galois.com>
+Gleb Alexeev             <gleb.alexeev@gmail.com>
+Gregory Collins          <greg@gregorycollins.net>
+Gwern Branwen            <gwern0@gmail.com>
+Haisheng.Wu              <freizl@gmail.com>
+Harry Garrood            <harry@garrood.me>
+Heather                  <heather@live.ru>
+Henk-Jan van Tuyl        <hjgtuyl@chello.nl>
+Henning Günther          <der_eq@freenet.de>
+Henning Thielemann       <lemming@henning-thielemann.de>
+Herbert Valerio Riedel   <hvr@gnu.org>
+Iain Nicol               <iain@iainnicol.com>
+Ian D. Bollinger         <ian.bollinger@gmail.com>
+Ian Lynagh               <igloo@earth.li>
+Ian Ross                 <ian@skybluetrades.net>
+Ilya Smelkov             <triplepointfive@gmail.com>
+Isaac Potoczny-Jones     <ijones@syntaxpolice.org>
+Isamu Mogi               <saturday6c@gmail.com>
+Iustin Pop               <iusty@k1024.org>
+Iñaki García Etxebarria  <garetxe@gmail.com>
+JP Moresmau              <jp@moresmau.fr>
+Jack Henahan             <jhenahan@uvm.edu>
+Jake Wheat               <jakewheatmail@gmail.com>
+Jason Dagit              <dagitj@gmail.com>
+Jean-Philippe Bernardy   <jeanphilippe.bernardy@gmail.com>
+Jens Petersen            <juhpetersen@gmail.com>
+Jeremy Shaw              <jeremy.shaw@linspireinc.com>
+Jim Burton               <jim@sdf-eu.org>
+Joachim Breitner         <mail@joachim-breitner.de>
+Joel Stanley             <intractable@gmail.com>
+Joeri van Eekelen        <tchakkazulu@gmail.com>
+Johan Tibell             <johan.tibell@gmail.com>
+John Chee                <cheecheeo@gmail.com>
+John D. Ramsdell         <ramsdell@mitre.org>
+John Dias                <dias@eecs.harvard.edu>
+John Lato                <jwlato@tsurucapital.com>
+John Wiegley             <johnw@fpcomplete.com>
+Jonathan Daugherty       <jtd@galois.com>
+Jookia                   <166291@gmail.com>
+Josef Svenningsson       <josef.svenningsson@gmail.com>
+Josh Hoyt                <josh.hoyt@galois.com>
+Judah Jacobson           <judah.jacobson@gmail.com>
+Jürgen Nicklisch-Franken <jnf@arcor.de>
+Karel Gardas             <karel.gardas@centrum.cz>
+Keegan McAllister        <mcallister.keegan@gmail.com>
+Ken Bateman              <novadenizen@gmail.com>
+Keshav Kini              <kkini@galois.com>
+Krasimir Angelov         <kr.angelov@gmail.com>
+Kristen Kozak            <grayjay@wordroute.com>
+Lemmih                   <lemmih@gmail.com>
+Lennart Kolmodin         <kolmodin@gmail.com>
+Lennart Spitzner         <lsp@informatik.uni-kiel.de>
+Liyang HU                <git@liyang.hu>
+Luite Stegeman           <stegeman@gmail.com>
+Luke Iannini             <lukexi@me.com>
+M Farkas-Dyck            <strake888@gmail.com>
+Maciek Makowski          <maciek.makowski@gmail.com>
+Magnus Jonsson           <magnus@smartelectronix.com>
+Malcolm Wallace          <Malcolm.Wallace@me.com>
+Mark Lentczner           <markl@glyphic.com>
+Mark Weber               <marco-oweber@gmx.de>
+Markus Pfeiffer          <markusp@mcs.st-andrews.ac.uk>
+Martin Sjögren           <msjogren@gmail.com>
+Martin Vlk               <martin@vlkk.cz>
+Masahiro Yamauchi        <sgt.yamauchi@gmail.com>
+Mathieu Boespflug        <mboes@tweag.net>
+Matthew William Cox      <matt@mattcox.ca>
+Matthias Fischmann       <mf@zerobuzz.net>
+Matthias Kilian          <kili@outback.escape.de>
+Matthias Pronk           <git@masida.nl>
+Max Bolingbroke          <batterseapower@hotmail.com>
+Maximilian Tagher        <feedback.tagher@gmail.com>
+Maxwell Swadling         <maxwellswadling@gmail.com>
+Merijn Verstraaten       <merijn@inconsistent.nl>
+Michael Sloan            <mgsloan@gmail.com>
+Michael Snoyman          <michael@snoyman.com>
+Michael Thompson         <what_is_it_to_do_anything@yahoo.com>
+Michael Tolly            <miketolly@gmail.com>
+Mike Craig               <mcraig@groupon.com>
+Mikhail Glushenkov       <mikhail.glushenkov@gmail.com>
+Misty De Meo             <mistydemeo@gmail.com>
+Miëtek Bak               <mietek@bak.io>
+Moritz Kiefer            <moritz.kiefer@purelyfunctional.org>
+Nathan Howell            <nhowell@alphaheavy.com>
+Neil Mitchell            <ndmitchell@gmail.com>
+Neil Vice                <sardonicpresence@gmail.com>
+Nick Alexander           <ncalexan@uci.edu>
+Nick Smallbone           <nick.smallbone@gmail.com>
+Nikita Karetnikov        <nikita@karetnikov.org>
+Niklas Broberg           <niklas.broberg@gmail.com>
+Niklas Hambüchen         <mail@nh2.me>
+Oleg Grenrus             <oleg.grenrus@iki.fi>
+Oleksandr Manzyuk        <manzyuk@gmail.com>
+Owen Stephens            <owen@owenstephens.co.uk>
+Paolo Capriotti          <p.capriotti@gmail.com>
+Paolo G. Giarrusso       <p.giarrusso@gmail.com>
+Paolo Losi               <paolo.losi@gmail.com>
+Paolo Martini            <paolo@nemail.it>
+Patrick Premont          <ppremont@cognimeta.com>
+Patryk Zadarnowski       <pat@jantar.org>
+Pepe Iborra              <mnislaih@gmail.com>
+Peter Higley             <phigley@gmail.com>
+Peter Robinson           <thaldyron@gmail.com>
+Peter Selinger           <selinger@mathstat.dal.ca>
+Peter Simons             <simons@cryp.to>
+Peter Trško              <peter.trsko@gmail.com>
+Phil Ruffwind            <rf@rufflewind.com>
+Philipp Schuster         <pschuster@uni-koblenz.de>
+Prayag Verma             <prayag.verma@gmail.com>
+Randy Polen              <randen@users.noreply.github.com>
+Reid Barton              <rwbarton@gmail.com>
+Richard Eisenberg        <eir@cis.upenn.edu>
+Ricky Elrod              <ricky@elrod.me>
+Robert Collins           <robertc@robertcollins.net>
+Roberto Zunino           <zunrob@users.sf.net>
+Robin Green              <greenrd@greenrd.org>
+Robin KAY                <komadori@gekkou.co.uk>
+Roman Cheplyaka          <roma@ro-che.info>
+Ross Paterson            <ross@soi.city.ac.uk>
+Rudy Matela              <rudy@matela.com.br>
+Ryan Desfosses           <ryan@desfo.org>
+Ryan Mulligan            <ryan@ryantm.com>
+Ryan Newton              <rrnewton@gmail.com>
+Ryan Scott               <ryan.gl.scott@gmail.com>
+Ryan Trinkle             <ryan.trinkle@gmail.com>
+RyanGlScott              <ryan.gl.scott@gmail.com>
+Samuel Bronson           <naesten@gmail.com>
+Samuel Gélineau          <gelisam+github@gmail.com>
+Sergei Trofimovich       <slyfox@community.haskell.org>
+Sergey Vinokurov         <serg.foo@gmail.com>
+Sigbjorn Finne           <sof@galois.com>
+Simon Hengel             <sol@typeful.net>
+Simon Marlow             <marlowsd@gmail.com>
+Simon Meier              <iridcode@gmail.com>
+Simon Peyton Jones       <simonpj@microsoft.com>
+Spencer Janssen          <sjanssen@cse.unl.edu>
+Stephen Blackheath       <stephen.blackheath@ipwnstudios.com>
+Sven Panne               <sven.panne@aedion.de>
+Sönke Hahn               <shahn@joyridelabs.de>
+Taru Karttunen           <taruti@taruti.net>
+Thomas Dziedzic          <gostrc@gmail.com>
+Thomas M. DuBuisson      <thomas.dubuisson@gmail.com>
+Thomas Miedema           <thomasmiedema@gmail.com>
+Thomas Schilling         <nominolo@gmail.com>
+Thomas Tuegel            <ttuegel@gmail.com>
+Tillmann Rendel          <rendel@informatik.uni-marburg.de>
+Tim Chevalier            <chevalier@alum.wellesley.edu>
+Tomas Vestelind          <tomas.vestelind@gmail.com>
+Toshio Ito               <debug.ito@gmail.com>
+Travis Cardwell          <travis.cardwell@extellisys.com>
+Tuncer Ayaz              <tuncer.ayaz@gmail.com>
+Vincent Hanquez          <vincent@snarc.org>
+Vo Minh Thu              <noteed@gmail.com>
+Wojciech Danilo          <wojtek.danilo@gmail.com>
+Yitzchak Gale            <gale@sefer.org>
+Yuras Shumovich          <shumovichy@gmail.com>
+capsjac                  <capsjac@gmail.com>
+shelarcy                 <shelarcy@gmail.com>
+Łukasz Dąbek             <sznurek@gmail.com>
diff --git a/Cabal/Cabal.cabal b/Cabal/Cabal.cabal
index f5956726ce2fceff15ccfe4f357af9a802c75d84..c2feda847f8b0e9a0a2a2f1ad1834a16c7955876 100644
--- a/Cabal/Cabal.cabal
+++ b/Cabal/Cabal.cabal
@@ -1,15 +1,13 @@
-name: Cabal
-version: 1.25.0.0
-copyright: 2003-2006, Isaac Jones
-           2005-2011, Duncan Coutts
-license: BSD3
-license-file: LICENSE
-author: Isaac Jones <ijones@syntaxpolice.org>
-        Duncan Coutts <duncan@community.haskell.org>
-maintainer: cabal-devel@haskell.org
-homepage: http://www.haskell.org/cabal/
-bug-reports: https://github.com/haskell/cabal/issues
-synopsis: A framework for packaging Haskell software
+name:          Cabal
+version:       1.25.0.0
+copyright:     2003-2016, Cabal Development Team (see AUTHORS file)
+license:       BSD3
+license-file:  LICENSE
+author:        Cabal Development Team <cabal-devel@haskell.org>
+maintainer:    cabal-devel@haskell.org
+homepage:      http://www.haskell.org/cabal/
+bug-reports:   https://github.com/haskell/cabal/issues
+synopsis:      A framework for packaging Haskell software
 description:
   The Haskell Common Architecture for Building Applications and
   Libraries: a framework defining a common interface for authors to more
@@ -17,9 +15,9 @@ description:
   .
   The Haskell Cabal is part of a larger infrastructure for distributing,
   organizing, and cataloging Haskell libraries and tools.
-category: Distribution
-cabal-version: >=1.10
-build-type: Simple
+category:       Distribution
+cabal-version:  >=1.10
+build-type:     Simple
 -- If we use a new Cabal feature, this needs to be changed to Custom so
 -- we can bootstrap.
 
diff --git a/Cabal/LICENSE b/Cabal/LICENSE
index bfbf4d1b7afdc1f7a5bfdec7a375b8e8c40e9b83..912b1a62260210dd54d600a5147e506bff8c8a3a 100644
--- a/Cabal/LICENSE
+++ b/Cabal/LICENSE
@@ -1,8 +1,5 @@
-Copyright (c) 2003-2016, Isaac Jones, Simon Marlow, Martin Sjögren,
-                         Bjorn Bringert, Krasimir Angelov,
-                         Malcolm Wallace, Ross Patterson, Ian Lynagh,
-                         Duncan Coutts, Thomas Schilling,
-                         Johan Tibell, Mikhail Glushenkov
+Copyright (c) 2003-2016, Cabal Development Team.
+See the AUTHORS file for the full list of copyright holders.
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without
diff --git a/Cabal/misc/gen-authors.sh b/Cabal/misc/gen-authors.sh
new file mode 100755
index 0000000000000000000000000000000000000000..390c20a6cc0cab65f5a18495c531f10c31ccde43
--- /dev/null
+++ b/Cabal/misc/gen-authors.sh
@@ -0,0 +1,3 @@
+#! /bin/sh
+
+git shortlog -se | cut -f 2-
diff --git a/Cabal/misc/travis-diff-files.sh b/Cabal/misc/travis-diff-files.sh
index 0dcd1bac1f6c6e13a5f56ebf0df2ba5acd8b4d74..e13b32a8e45b1fd0533eae1e92c4a52e9f0577a3 100755
--- a/Cabal/misc/travis-diff-files.sh
+++ b/Cabal/misc/travis-diff-files.sh
@@ -1,3 +1,3 @@
 #!/bin/sh
-git status > /dev/null # See https://github.com/haskell/cabal/pull/3088#commitcomment-15818452
+git status > /dev/null # See 09a71929e433f36b27fd6a4938469d3bbbd5e191
 git diff-files -p --exit-code
diff --git a/cabal-install/LICENSE b/cabal-install/LICENSE
index d063a63130e8bd518072365bd9cbd8176afbbafe..912b1a62260210dd54d600a5147e506bff8c8a3a 100644
--- a/cabal-install/LICENSE
+++ b/cabal-install/LICENSE
@@ -1,8 +1,5 @@
-Copyright (c) 2003-2016, Isaac Jones, Simon Marlow, Martin Sjögren,
-                         Bjorn Bringert, Krasimir Angelov,
-                         Malcolm Wallace, Ross Patterson,
-                         Lemmih, Paolo Martini, Don Stewart,
-                         Duncan Coutts
+Copyright (c) 2003-2016, Cabal Development Team.
+See the AUTHORS file for the full list of copyright holders.
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without
diff --git a/cabal-install/cabal-install.cabal b/cabal-install/cabal-install.cabal
index 8aa77fbdeb4425cc5ded08e75c12e702693e5292..c8c85a0bde9370dd861a556a720adbfde35b15ed 100644
--- a/cabal-install/cabal-install.cabal
+++ b/cabal-install/cabal-install.cabal
@@ -9,17 +9,9 @@ homepage:           http://www.haskell.org/cabal/
 bug-reports:        https://github.com/haskell/cabal/issues
 License:            BSD3
 License-File:       LICENSE
-Author:             Lemmih <lemmih@gmail.com>
-                    Paolo Martini <paolo@nemail.it>
-                    Bjorn Bringert <bjorn@bringert.net>
-                    Isaac Potoczny-Jones <ijones@syntaxpolice.org>
-                    Duncan Coutts <duncan@community.haskell.org>
-Maintainer:         cabal-devel@haskell.org
-Copyright:          2005 Lemmih <lemmih@gmail.com>
-                    2006 Paolo Martini <paolo@nemail.it>
-                    2007 Bjorn Bringert <bjorn@bringert.net>
-                    2007 Isaac Potoczny-Jones <ijones@syntaxpolice.org>
-                    2007-2012 Duncan Coutts <duncan@community.haskell.org>
+Author:             Cabal Development Team (see AUTHORS file)
+Maintainer:         Cabal Development Team <cabal-devel@haskell.org>
+Copyright:          2003-2016, Cabal Development Team
 Category:           Distribution
 Build-type:         Custom
 Cabal-Version:      >= 1.10
diff --git a/travis-script.sh b/travis-script.sh
index af326751cad3adc812cfc1db5b6f61482d5ab998..b581cdf807a89d98f15e4a81f90e15a74037863f 100755
--- a/travis-script.sh
+++ b/travis-script.sh
@@ -9,20 +9,30 @@ if [ "$PARSEC_BUNDLED" != "YES" ]; then
 fi
 
 # ---------------------------------------------------------------------
-# Cabal
+# Check that auto-generated files/fields are up to date.
 # ---------------------------------------------------------------------
 
-cd Cabal
+# Regenerate the CONTRIBUTORS file.
+# Currently doesn't work because Travis uses --depth=50 when cloning.
+#./Cabal/misc/gen-authors.sh > AUTHORS
 
-# Test if gen-extra-source-files.sh was run recently enough
+# Regenerate the 'extra-source-files' field in Cabal.cabal.
+cd Cabal
 ./misc/gen-extra-source-files.sh Cabal.cabal
-./misc/travis-diff-files.sh
 
+# Regenerate the 'extra-source-files' field in cabal-install.cabal.
 cd ../cabal-install
 ../Cabal/misc/gen-extra-source-files.sh cabal-install.cabal
-../Cabal/misc/travis-diff-files.sh
+cd ..
 
-cd ../Cabal
+# Fail if the diff is not empty.
+./Cabal/misc/travis-diff-files.sh
+
+# ---------------------------------------------------------------------
+# Cabal
+# ---------------------------------------------------------------------
+
+cd Cabal
 
 # Build the setup script in the same way that cabal-install would:
 mkdir -p ./dist/setup