repair and streamline VS 2008 projects
MzCOM: avoid the ATL framework

Building MzCOM without ATL means that Visual Studio Express --- or
other free compilers, in principle --- can build MzCOM. It also cleans
up and simplifies the build.

The non-ATL implementation is based on "Com in Plain C" by
Jeff Glatt, and uses a lot of his code (with instructive
comments intact).
add -z flag

for zeroing out the margins when printing a slideshow
Add section on separate compilation to reference
Make unfold use typecase instead of subst.
minor cleanups to contract-random-generate's API
adjust box/c to use the val-first-projection protocol
Makefile: add `IF EXISTS` guard on `del` for a Win32 target

Fixes Windows installer builds in a fresh working directory.
fix bug introduced in 23d5cf56
tweak save-file docs based on my own earlier confusion
adjust drracket IO test to be more forgiving to IO order
add box/c tests (should have been included in 37a4a9ada6)
bring down below 102 columns
fix mangling of drracket io test
Make group-by preserve the ordering of the original list.
vectorof contract: add some tests and make flat variant subscribe to the val-first protocol
redex: fix stepper

This was exposed by the removal of the undefined value.

It's not clear if there was a bug lurking here or not.
The call to "move" was being bypassed on the initialization
of "pb", so the side effect of setting "set-visible?" wouldn't
have happened. Either that really didn't cause any problems,
or perhaps things looked strange briefly until the user did
something.
racket/unit: repairs related to signature extension

Fix signature extension so that the scope of identifiers in the
extended signature behaves the same as `open`.

Also, fix `struct` (or generally `define-values-for-export`)
in its interaction with `open` and `unit-from-context` (two
different bugs).
added non-terminal-gap-space
bring down below 102 lines