fix `nack-guard-evt'

The generated NACK shouldn't become ready when the thread where
the NACK is created terminates.
fix a test
fix internal call to the module name resolver

Also, check arguments in the default module name resolver.
Corrected error messages in test file to match new wordings.
Correctly protect Procedures in TR.

Closes PR 13664.
Add polydots to all things that support it.

Closes PR 13612.
Closes PR 13584.
New Racket version 5.3.4.4.
fix iteration on large hash trees

Bug introduced by 7a8c2ff063: a tree can be deep enough that the
representation of the path to the current item can be too big to
fit into 32 bits. It will always fit in 64 bits, though.

Merge to 5.3.4
fix NACK fix

Fixup for 74fb6feb45.
pkg: "module name resolver" and "index" -> "catalog"

This termonology change affects lots of function names from `pkg/lib'
and `pkg/db' (former `pkg/pnr-db'), and it also affects some `raco
pkg' commands.

Existing package installations that are marked as 'pnr in a
local configuration are converted automatically to 'catalog, but any
existing "indexes" configuration must be changed to "catalogs".
updated HISTORY

Merge to 5.3.4 release
redex: unfold nts once during unification

Also:
* add a backtracking limit
* check for ground terms in both term and pat environments
  when filling in generated patterns
* update tests to be consistent with the above
racket/gui cocoa: fix `enable' on window whose ancestor is disabled
ffi/unsafe: allow a constant result for asynch use of a callback

A constant result for foreign-thread use of a callback allows a
callback to return without synchronizing with the Racket thread.
A constant result is thus useful when a callback's work can simply
be skipped if the callback is applied in the "wrong" OS thread.
ffi/unsafe/objc: remove `-A'/`+A', add `#:async-apply'

Another run at the problem 57516164de was meant to solve. The
new solution just gives up when a `drawRect:' method is called
in the wrong thread, which might create refresh glitches but
avoids a deadlock in the case that the Racket thread is blocked
on the update happening in the foreign thread.
setup/scribble: avoid top-level state
raco pkg: fix `--scope user' option
pkg/gui: first cut at a GUI package manager

For now, run it with `racket -l pkg/gui/main'. The expectation
is that DrRacket will start using this GUI.
fix `exn:fail:filesystem:missing-module-path'
Add optional message flags argument to imap-append.

Previously this was hard-coded to use the \Seen flag. Now that's the
default value when the argument is not supplied.