Update infrastructure for Git.
* .gitignore: New file.
* .bzrignore: keep it as a symlink to .gitignore.
* externals-list: New file.
* admin/update-archive.sh: Use Git. Use make.log when running in batch.
Turn build/packages into an rsync-copy rather than a symlink. Use relative
file names.
(copyright_notices, check_copyright): Remove. Use new "make" rule instead.
* admin/archive-contents.el: Use lexical-binding and pcase.
(archive--revno-re): New const.
(archive-prepare-packages): New `srcdir' argument, so we can add the ChangeLogs
to a parallel tree to the Git working dir.
(archive--simple-package-p): Don't return the commentary any more.
(archive--process-simple-package): Remove `commentary' arg. Don't write out
the *-readme.txt file. Reduce stdout noise.
(archive--make-changelog): New arg `srcdir'. Use Git.
(archive--process-multi-file-package): Don't copy the readme.
(batch-make-site-dir, batch-make-site-package): Remove functions.
(archive--get-prop, archive--get-section, archive--quote)
(archive--insert-repolinks): New functions.
(archive--html-make-pkg): Include NEWS and obey "URL:" header. Generate the
*-readme.txt files here.
(archive--elpa-git-url): New constant.
(archive-add/remove/update-externals): New function.