Major revision of subtyping code for performance.

Improves tests/typed-racket/succeed/new-metrics.rkt by about 33% overall runtime.

Major changes include:
 - Handling memoization entirely inside the `subtype*` function.
 - Remembering only previously seen pairs of types when one of them
   might be a recursive type (such as Mu or a structure).
   Thanks to Ryan Newtown for this this idea, which enables the
   previous change as well.
 - Doing as much as possible without touching parameters.
   (Unfortunately, not as much as I hoped was possible here).
 - Replacing uses of => in `match` with #:when (written for this purpose).
 - Significant improvement to the `Type-key` system so that it is
   useful much more often.
 - Use of unsafe operations.
 - Minor optimizations to a few other operations.
don't die when pkg-catalog-suggestions-for-module raises an error

related to PR 14115
unix sockets: Linux is fine on any architecture

No need to limit ourselves to x86.
Regardless of architecture, sun_path is always 108 bytes long on Linux.

Signed-off-by: Jan Dvořák <mordae@anilinux.org>
unix sockets: reworked to support abstract namespace

Rewritten to read sligthly easier while adding support for abstract
namespaces on Linux.

Signed-off-by: Jan Dvořák <mordae@anilinux.org>
tests, doc edits, and minor changes for unix sockets
fix a bug in the syntax colorer
add a tag for secref to target
point from the 2d cond description to the keybindings docs
Use "Keyboard Shortcuts" as the tag to avoid breaking links
to the documentation

also, fix the deps
Refactor abbrev modules in TR

Removed redundant whitespace and lines. Reworded/reformatted
comments for consistency.
Renumber section comments.

Most were off by one due to documentation changes. Also
reformat for consistency.
Clean up Typed Racket's main base type environment

Sort by manual section, reformat for consistent formatting,
remove redundant lines.
Delete trailing whitespace
Remove unnecessary `require`s

These imports are unnecessary because of the
`except-in` import of `racket` near the top.