pandoc-doc.sh: Change 'master' to 'HEAD' in git_describe_string

For more flexibility, uses HEAD on current branch
pandoc-doc.sh: Split pdf_opts into separate book, article options
pandoc-doc.sh: Change CSS file path
pandoc-doc.sh: Formatting changes
changelog.sh: Add function get_tag_date

This replaces a code fragment
spawn-project.sh: Remove patterns better kept in global .gitignore
pandoc-doc.sh: Add git_last_commit_date to build_name
pandoc-doc.sh: Revise for use with Pandoc HTML template

- Add username, buildtag
- Revise build_name
- Remove metadata=version in set_global_opts
- Add metadata opts to html_opts
- Remove plus.css in html_opts
pandoc-doc.sh: Move metadata variables to set_global_opts
pandoc-doc.sh: Add file includes to pdf_article_opts

- Add --include-in-header
- Add --include-before-body
pandoc-doc.sh: Modify pdf_article_opts

- Change monofont
- Change linkcolor to urlcolor
spawn-project.sh: Add .gitattributes file generation
pandoc-doc.sh: Add '--variable=linkcolor:black'
pandoc-doc.sh: Remove 'whoami' from build_name

Since it isn't a username I can use consistently across services,
it can't serve as a global identifier, as the project name and
commit hash both can.
pandoc-doc.sh: Reconfigure output options

Re-designate or add options 'html-bare', 'html-plain', 'html-fancy',
'pdf-article-plainer', 'pdf-article-plain', 'pdf-article-fancy'.

* '-plain*' options use no additional styles
* 'html-bare' is headless
catalog-files.sh: Update 'Description' in file header
catalog-files.sh: Use cat, not echo, in display_usage

Also remove redirect to stderr (usage message should redirect
to stdout), and reformat usage message
catalog-files.sh: Rewrite using 'test' instead of 'if...then'

* Using 'test' and control operators ('&&' and '||') instead of
  if...then is more compact and not necessarily less readable.

* Previously, tested for at least one argument; now test for
  exactly one argument and tests to see that it exists as a
  directory.

* Also added correct exit codes.
changelog.sh: Rewrite function display_usage

* Use here document instead of echo
* Output of usage message should go to stdout
changelog.sh: Remove function get_tag_date and integrate its statements

Function get_tag_date was using a global variable, $git, set by the script.
To avoid this, integrate those statements into the script and remove
the function.