Add more examples for `struct` in Reference

Please merge to v6.0
(cherry picked from commit c7d688df2210fa710b66b7f705cadc62a9e61c9a)
scribble/lncs: doc repair

Merge to v6.0
(cherry picked from commit 8514662b839d63da36d03d6f2125223f8e38b41f)
reference: add information on the cost of hashing

Merge to v6.0
(cherry picked from commit bb5429a039f4a91c40e5840dfb9118022f313863)
racket/draw/gif: recognize #xFF extension block

Merge to v6.0
(cherry picked from commit 72ba0c98794dccb18bf204d73497be3a1bb9bc55)
unstable-doc: make dependency on DrRacket docs indirect

A direct reference makes the "gui" package depend on the
"drracket" package, and making the reference indirect avoids
that dependency.

Merge to v6.0
(cherry picked from commit 37fe471a373c78c66eb6044195dda6cbf3e38945)
remove "unstable-test" as dependency of the "unstable" package

Merge to v6.0
(cherry picked from commit 40812031a83b4effb9b3a431236a217e4579e08f)
fix "racket-index" package installed in user scope

When the "racket-index" package is in user scope, then the
the documentation-build process should not try to write to
"doc" in the installation.

Merge to v6.0
(cherry picked from commit 20af636cfb0fda7f034775da3afec7c81f799774)
doc search: fix manual-title table

Merge to v6.0
(cherry picked from commit 56518f0615f472cd4e75243c1fc1b1519496a3d9)
clean up racket-doc dependencies

Please include on the release branch
(cherry picked from commit c473f203237b8d699efbbb55796c5a642a3db478)
remove dependency on data-test from data

Please include on the release branch
(cherry picked from commit ff54059513bd9fa120ff3407e8d091e3d497fc34)
remove dependency on rackunit-test from rackunit

Please include on the release branch
(cherry picked from commit ae6bdd0168ec91652364330dd4c59e19a250415b)
remove dependency on db-test from db

Please include on the release branch
(cherry picked from commit 29476c5885170247e4e568631dfdd74d361052eb)
raco dist: fix for Unix GUI executables

Merge to v6.0
(cherry picked from commit 790ae0705ca85e260126164b9b7ba2f3b2653706)
raco exe: add `--config-path` option, default to "etc"

Make executables created by `raco exe` not refer to the original
configuration directory by default, but add an option for setting
the directory.

For Unix ELF executables, fix `raco exe` to set/preserve the
configuration directory.

Merge to v6.0
(cherry picked from commit 33b7d49b2ec2314c251af0992d497908229b9270)
raco exe: suppress expected stderr output

Merge to v6.0
(cherry picked from commit fd2da02029bd6a31b48ee9dfa2ff836b45fc1291)
racket/gui win32: reset canvas backing size when scroll bars change

Avoids a gray box at the bottom of the GRacket REPL window on
startup, or in DrRacket when a horizontal scroll is automatically
removed due to, say, hiding a interactions window positioned to
the right of the definitions window (where the definitions content
is narrower than the whole window but wider than half).

Merge to v6.0
(cherry picked from commit 836f4cab20c9ac4e8084a0c9f97e10e82533809f)
move `setup/xref` from "scribble-lib" to "racket-index"

The `setup/xref` library conceptually belongs in "racket-index",
and moving the library avoids a cross-package use of a private
module.

Merge to v6.0
(cherry picked from commit d37e910169622364a10cdd34f00ade99ee216a77)
Add #f as a special case for hash-ref, fix hash-ref!.

Closes PR 14158.

Merge to 6.0.
(cherry picked from commit 258d9b8e2f53936ff166c069ca0ab267ed77f602)
Include empty symbol in variable enumeration

Please merge into 6.0.
(cherry picked from commit 3e1840ac6790a73fb2feed343629c137df5f7d2c)
Initial version of enumeration docs

(Please include on the release branch --robby)
(cherry picked from commit 27119013b3a746ff4a251b7c16ca7233588a203d)