Add script used to update Changes.md
Update build (generator) script

Use APP_VERSION instead of APP_REVISION in various target names.

Indicate a few build commands are generators, so that their output is not removed on ‘ninja -t clean’.

Move generated dummy files (for tagging, uploading, deploying, etc.) to sub-directories to reduce noise in build directory.
Update .git_ignore
Bump version of bundle cache format

The cache update code has an issue causing some users to get an incomplete view of what’s on disk. Bumping the version forces re-indexing, and is not a long-term fix.
Allow a target to use both new and old test system

Presently the new test system cannot be used for (interactive) GUI tests, so we keep the old one until we have that feature in the new.
Update testing system for ns framework
Update OakAppKit tests for new conventions
Rename test header extension: .cc → .h
Update license info for third party frameworks
Remove code to cleanup old cache files
Make cache_t::erase also remove descendants
Use cache_t::erase when uninstalling a bundle
Do recursive rescan of updated bundles

Previously we would rescan the parent path which was effectively a no-op.

Also pass the “recursive” flag from fs-events to cache_t::reload.
Ensure version_less(NULL_STR, «any») → true
Checkin release notes
Fix non-retaining Objective-C property

The ‘lastVersionDownloaded’ property used ‘assign’ (since it used to be an integer) which meant TextMate would likely crash when the property was read (and had a non-nil value), which it would, when TextMate did a version check after already having downloaded an update (but not yet installed and relaunched).

Also drop the atomic requirement of the ‘archive’ property since we no longer access it from multiple threads.