Added t8080 - make sure we can't include files outside of our variant.

If we have a variant and do "include ../foo.tup", we don't want to be able to grab a foo.tup from the source tree - otherwise, when we switch from a variant build to a normal build, ../foo.tup will no longer mean anything.
Rename t4099 to describe what it is.
Added t4100, t4101 - begin to support output files in different directories.

This works by using srcid to designate the actual owner of the generated file, so that we can still handle stale target deletion properly.
Added t4102 - delay gitignore processing to handle outputting in different dirs.

If we generate a gitignore file in one directory, and then later parse another directory that writes files to the first, they won't be included in the gitignore file. Instead we need to write the gitignore files after all directories have been parsed so we have the entire file manifest for the directory.
Added t4103 - check collisions when outputting to other directories.
Added t4104 - another output dir collision test.
Added t4105 - don't wildcard files from external Tupfiles.

When parsing a Tupfile, the wildcard matches the nodes owned by the current directory. Files being output in another directory won't match the wildcard, since there is no ordering for them.
Database version 16 - srcid index.

Added t4106 for making sure that we properly remove outputs in other directories.
Added t4107 - create a generated dir if the output directory does not exist.
Added t4108 - manually remove generated dir, make sure it comes back.
Added t4109 - convert generated dirs to normal dirs if files are manually created.
Added t4110 - convert a normal dir to generated dir.
Added t4111 - third-parties can't list inputs on generated files in different directories.
Separate group sticky links in tup_db_get_inputs()
Added t3071 - %r flag can be used as a resource file for groups.
Added t4112 - fix race in generated dir creation.

When multiple commands are kicked off, each writing to a generated directory, we need to synchronize the directory creation in tup_entry_openat() so they don't break each other.
Added t4113 - convert ghosts to generated dirs correctly.
Added t4114 - add generated dirs to .gitignore files.

Another option would be to create a .gitignore file in the generated directory itself, but that is much trickier to manage because we don't have a Tupfile that has the .gitignore directive. It becomes difficult to know when the .gitignore file should be removed, since its existence would be dependent on having a .gitignore directive in any of the src directories. Instead we can just add the generated dir to the .gitignore file of its parent directory. Unfortunately this does mean you need to create a Tupfile in the parent dir.
Added t4115 - adding a generated dir should re-create parent's .gitignore
Fix t3071 for Windows.

cl.exe's @resource-file works fine with forward-slashes and UNIX line endings, but Cygwin has issues with backslashes and Windows line endings, so just use '/' and '\n' everywhere.