Accept optional cwd and env to verbose_cmd
tests: Support running tests from subdirectories
tests: Clean before each run
Fix bibtex when citations occur in \include'd files

BibTeX does not consider \@inputs in aux files to be relative to the
location of that aux file, so we have to run it from the output
directory for it to find the aux files of \include'd inputs.
Unfortunately, this means BibTeX is no longer able to find local bib
or bst inputs, so we have to tell it and Kpathsea where to search for
those (there's no way to tell it where to search for aux files, which
would have been the easier fix.)
Handle \bibliography in \included file

Previously, when determining if bibtex was worth running, we only
looked for bibliography-related commands in the main aux file.
However, if the \bibliography appears in an \included file, these
commands will be in a sub-aux file.  Handle this by recursively
scanning aux files in the same way bibtex does.
Better gitignore
tests: One more include test