Bind module body code to module, not object
Bind module body code to module, not object

In the current workings of the system, MODULE! is a distinct type
from OBJECT!.  Creating one is somewhat roundabout, because if you
are to write `make module! [[spec][body]]` what actually happens is that
the system turns around and calls a routine `make-module*` which is
Rebol code in the bootstrap...this routine then creates an object out of the
spec and calls into the system again with `to module!` on a temporary
object frame it has built with that spec object.

The binding makes the assumption that the frame of the object passed in
to TO MODULE! will be the same as the frame of the module coming back.
When FRAME! is removed as a type and a REBSER "frame" pointer is a
true surrogate for the representied item, that doesn't work mechanically...
e.g. the SELF of a module needs to be a module, not an object.

This is an interim transformation that *should* be able to work on both code
before and after the FRAME! change.  It moves the binding of the body code
to be run to be bound to the result of the TO MODULE! instead of implicitly
assuming that the binding will be the same.

There is also some formatting to help readability in the routine.

hostilefork/rebol,hostilefork/rebol,codebybrett/ren-c,hostilefork/rebol,rgchris/ren-c,codebybrett/ren-c,giuliolunati/ren-c,codebybrett/ren-c,rgchris/ren-c,draegtun/ren-c,giuliolunati/ren-c,kealist/ren-c,rgchris/ren-c,codebybrett/ren-c,rgchris/ren-c,kealist/ren-c,draegtun/ren-c,kealist/ren-c,codebybrett/ren-c,draegtun/ren-c,giuliolunati/ren-c,giuliolunati/ren-c,draegtun/ren-c,giuliolunati/ren-c,kealist/ren-c,hostilefork/rebol,hostilefork/rebol,draegtun/ren-c,rgchris/ren-c,kealist/ren-c,codebybrett/ren-c,draegtun/ren-c,kealist/ren-c,hostilefork/rebol