Racket: new commands to show and hide test submodules

The new commands, being racket-specific, are called
geiser-racket-{show,hide,toggle}-tests, and have no default binding in
geiser-mode (since they don't have any meaning in Guile).

The implementation is based on more generic functions in geiser-edit
that allow hiding of any top-level form, given its name, so we will
probably find new forms to hide in the future.

Hiding is limited to top-level forms, which i think is fine for the only
use case we have in mind right now.
Let's make it *any* submodule

So the new functions are named geiser-racket-*-submodules, and by
default all submodule forms are hidden.

Now that we have the helpers in geiser-edit, we could have a generic
command in geiser-mode to change the visibility of form at point.
Ensuring that comint-process-echoes is nil in REPL

This variable makes comint wait for the underlying process to echo its
input, something our schemes won't do.  If anyone sets the variable
globally for what can only be perverse reasons, we just would just hung.
Not anymore.
Syntax error fixed

Too much clojure latetly!!