racket/snip and racket/gui: remove leftover `~` methods

The `~` methods on snip and editor-related classes are not documented
or called from anywhere. They corresponded to destructor methods back
when the classes were ported from C++.
racket/gui: change pasteboard to put location info in snips

Use the field in a `snip%` that is otherwise used by a `text%` owner
to store line information. Reusing the field avoids the need for
an `eq?`-based hash table of snips.
racket/gui: change some `eq?` to `object=?`

Some places in the editor API accept an object as an argument
where the object's identity is relevant. In that case, `object=?`
must be used instead of `eq?` to work right with contracts.
fix checking of attempt to impersonte non-struct via mutator
try to explain enumerator mismatch bug more carefully
adjust test/spec-passed so that tests continue when exns are raised

(as these usually indicate failing test cases)
fix careless error
restore "getting started" link

This change adjusts the meaning of the 'getting-started document
category, which was formerly omitted from the start page. Now,
it means a document that is listed at the beginning and at the same
level as other documents.

(Didn't just revert to the old approach to the "getting started"
entry, because it doesn't work right when "racket-index" is installed
without "racket-doc".)

Closes PR 14348
Refactor type-table

Move the provides to the top following the style guide and
add a purpose statement for the module
Add an ignore-table for TR's optimizer

This allows the typechecker to tell the optimizer or
other downstream analyses what expressions to ignore
because they contain non-typechecked code.

Use it to fix handling of `send`
Add FxVector type to Typed Racket

The `for` forms for fxvectors are future work
Add in-flvector, in-fxvector to TR base environment
scribble/text: fix contract and docs on `with-writer`
scribble/html: add 'index flag in `url-roots`

This flag can be used to make "file://..."-rendered pages easier
to inspect.
Make flvectors and fxvectors sequences.
Simplify types for flvector and fxvector operations.
scribble/manual: delay expressions that require collection-based files

This changed make `(require scribble/manual)` work in an executable,
although actually rendering documents requires the "scribble"
collection.
Make flvectors and fxvectors subtypes of sequences.
Fix TR optimizer test.
Improvement and bug fixes to the new class/c; try again to re-enable it

Fixed:
- class-field-accessor and class-field mutator,
- the interaction between init args contracts and subclasses,
- object=? on wrapped objects (ie if 'this' flows out and
  is compared to the object thatn 'new' returns)
- contract-name for class/c

Also, the code now uses impersonator properties internally to track a
class that is wrapped (instead of a wrapper struct).  This simplifies
a bunch of places in the code and paves the way for classes that have
a class/c contract to be chapeone-of the original class (altho that
doesn't work yet)