Fix pattern unification to deal with #f correctly
Bitmap test adjustments

- fill in unix bitmaps
- combine the horizontal metafunction test cases into a single bitmap
tweak arrow contract expansion to make the output a little easier to read
properly handle eof in the online expansion code

It used to just kind of give up processing which, from the outside,
watching looked like

  (begin-for-syntax (custodian-shutdown-all (current-custodian)))

and so fell into that case in the code. Now, by explicitly raising
an exception, we get a more accurate response
fix a with-handlers to avoid catching break exns
bring 'jump to definition' more in line with online check syntax

That is, when right-clicking on an imported identifier, if the
file that has that identifier's definition is open and online
check syntax has completed, then offer a "jump to definition" menu
item that just jumps there with the already computed informtion.
If the file isn't open or online check syntax hasn't completed,
instead offer just to go to the file, without jumping to the definition

also
- things should generally work slightly better with submodules
- jumping to identifiers should do a better job with scrolling,
  specifically it should scroll so the jumped-to identifier is
  about 20% from the top of the window (unless it was already visible,
  in which case no scrolling should occur)
bring mac os x bitmaps in line with recent commit made for the linux bitmaps
use clipping in the recent commit to actually test bounding boxes
added a void contract to fix setup
Cleanup kw/opt lambda annotations.
Make kw/opt lambda special checks work with other expected values.

Closes PR13544.
Reduce unnecessarily complicated restrict case.
Fix type of split-at and vector-split-at.

Closes PR12700.
tidy up gui

Also improve the speed of compute-diffs by approximately 350x
(from 18+ seconds to about 50 milliseconds on the test case
that's currently failing)
make-traversal's optional argument is now ignored

Recent changes eliminated it, but it seems better
(for backwards compatibility) to leave it there but
ignore it
Redex: generation for judgment-form side-conditions

- enable generation for the above by compiling to
a disequation with "#f"

- wrap bare terms in relation definitons in
  side-conditions (require they not be "#f")
declare failing test should not have failed

This test started failing due to the additions of the calls
to clip, introduced in commit e6dc9c28b492d95.  The actual
difference is only 9 pixels out of about 100,000 relevant
pixels. Even better, here's the precise rgb values for the
mis-matched pixels (the alpha values don't change):

   (224 251 255) vs (229 255 255)
   (200 242 255) vs (205 247 255)
   (205 242 255) vs (210 247 255)
   (205 242 255) vs (210 247 255)
   (205 242 255) vs (210 247 255)
   (205 242 255) vs (210 247 255)
   (200 242 255) vs (205 247 255)
   (224 251 255) vs (229 255 255)
   (242 255 255) vs (247 255 255)

It isn't clear to me why clipping like this would have this
particular change, but I think it is safe to assume that
Redex shouldn't change in response to this!
like d9c81a593, but this time only 4 pixels
(and this time under linux, not mac os x)
Racket rename
fixed .ss name in title