Some improvements to the Cargo compiler file.
Use rustc's errorformat and add option to specify permanent parameters.
Updates based on kballard's feedback.
Added check for absolute file path, removed hard tab, and added documentation for new option.
Remove incorrect assert in trans

As an optimization, once unboxed closures receive their environment by
value if it fits within the size of an `int`.  An assert in this code
path assumed that this would only occur if the environment had no more
than a single free variable in it, but multiple smaller free variables
can easily be packed into the space of an `int`, particularly if any
of them are 0-sized.  The assert can simply be removed.

Closes #18652
Add regression test for #18652
Properly static lib packaging

Fixes #18574
Prepend should be append in the 30 minute intro

The examples are about adding to the end of the array, not the
beginning.
Make TyTrait embed a `TraitRef`, so that when we extend TraitRef, it naturally carries over to object types.

I wanted to embed an `Rc<TraitRef>`, but I was foiled by the current
static rules, which prohibit non-Sync values from being stored in
static locations. This means that the constants for `ty_int` and so
forth cannot be initialized.
Update parser with `for` syntax
Update tests where we don't report errors twice anymore
Purge the old `once_fns`, which are not coming back
Fix tidy error
Rename deprecated EnumSet methods in unit tests.
Add BitXor to EnumSet.
syntax: Use UFCS in the expansion of `#[deriving(PartialOrd)]`
Add tests for BitAnd and BitXor.
Update Partial/Total Eq/Ord terminology
Reword &str coercion into viewing
Renamed Extendable to Extend

In order to upgrade, simply rename the Extendable trait to Extend in
your code

Part of #18424

[breaking-change]