make sure redex-match? does the duplicate non-terminals check

closes PR 14290
Make parse-type do a for-label require.
Make annotate classes use for label.
Make tc-app code match using label phase.
Reduce and document template requires in types.
Reduce for-template imports in environment code.
Minor cleanup in utils.
Make typechecking code use label instead of template for binding.
Remove unused require.
Add tests to check conversion of types to static contracts.
Make numeric contracts in unions better.
Optimize away recursive contracts in more cases.
Optimize cons/sc contracts.
x86_64: minor bignum performance boost

Incorporate a few x86_64 assembly routines from the latest GMP,
which provides a small speed boost for operations such as bignum
multiplication and division.
add syntax/wrap-modbeg
scribble/manual: break `defthing` output lines if needed

If the defined identifier plus contract doesn't fit on a single
line, put them on separate lines.
scribble/manual: improve `defstruct` layout

The old layout used column spans that created ugly space around parentheses
for some combinations of field-name and keyword-modifier lengths. The new
layot avoids the problem by breaking the keyword modifiers into their
own table.
Adjust rewrite-side-conditions/check-errs so that it
returns the ellipses names in addition to the regular names

keeping the names in the pattern and including them in the last
two results

closes PR 14291
adjust bitmap test to just show the diffs right away

(because it is a lot faster now than it used to be, thanks
to earlier improvements)

Also, Rackety
some small changes to the fonts (perhaps for the update to osx 10.9)