git's .gitignore (wildmatch) semantics, one implementation per language and shared conformance
vectors: a file's patterns apply below its directory, the last matching pattern wins, a deeper file
beats a shallower one, a trailing slash means directories only, and matching is case-sensitive on
every platform.