windows: switch projects to SGC by default
windows: fix sgc allocation of executable pages
avoid NULL argument to memcpy()

gcc 4.9 takes advantage of the specification of undefined behavior if
you pass a NULL to memcpy(), even if the last argument is 0
remove accidentally added file
windows: remove custom manifest

The manifest was intended to enable XP-style controls, but at this
point it doesn't seem to do anything except interefere with some
variants of the build tools.
Windows: more changes to auto-adapt to Visual Studio version

Although newer versions of Visual Studio can open 2010 projects, the
meaning of the project turns out to be: use 2010 tools. So, I've added
a step in the build script to automatically upgrade the solutions and
projects based on the version of Visual Studio that is being run.

Meanwhile, since my previous tests for VS 2012 and VS 2013 were using
VS 2010 projects, I wasn't actually testing with the 2012 and 2013
compilers. Additional changes are needed to make those work, notably a
fresh implementation of setjmp() and longjmp() for Win64.

This was all very painful, but the projects are now in much better
shape, so maybe it won't be so bad from here.
fix no-places, no-futures build
Revert "windows: remove custom manifest"

This reverts commit 67007451b38a6c351ae2bd909391936751c2fdff.

Seems to be needed after all.
windows: better approach to manifest

Works for VS 2008 and 2012, at least.
Fix TR type for current-check-around
suppress `ar` output for SGC library

The `nicear` script avoids stderr output on DrDr.
build less when a pre-built `racket` is supplied

Adjust dependency tracking and makefile rules to that when
`--enable-racket=...` is provided to `configure`, intermediate
CGC objects are not compiled.

The new approach uses dependency tracking that was already supported
by xform, previously used only for Windows.
racket/draw: avoid an internal error on a bad bitmap
racket/gui: minor test clean-up
fix doc typo
reegxp-match: fix problem with lazy string decoding and output port

Closes PR 14684
doc clarifications and typo in command-line help
racket/gui: fix problems with canvas autoscroll
remove accidentally added files
pkg metadata: add `update-implies`

The `update-implies` declaration is half of `implies` (even though the
name is bigger): update of the package implies an update of another,
but a dependency on the package is no license to access the content
of the other.

This declaration is intended as an alternative to keeping version and
dependency declarations in sync for a pair of packages that are always
updated together, normally because the packages are in the same
repository. For example, a "-test" or "-doc" package might have an
`update-implies` declartion on the corresponding "-lib" package.