Racket: better behaviour of geiser-eval-buffer

For buffers containing a #lang directive, geiser-eval-buffer was simply
broken: one cannot send the whole region wrapped in a `begin' in that
case.

We try now to send the region below, although a real solution would
imply using #%module-begin as the wrapper, in order to be robust for
languages that define their own version of the macro (such as TR).

But people should use C-c C-a or C-c C-k and leave this silly function
alone instead.