num: Slightly optimize bigint
num: Migrate `~[T]` to `std::vec_ng::Vec`
mk: Clean libbacktrace w/ gusto

After `make clean' I'm seeing the build break with

```
cp: cannot stat ‘x86_64-unknown-linux-gnu/rt/libbacktrace/.libs/libbacktrace.a’: No such file or directory
```

Deleteing the libbacktrace dir entirely on clean fixes.
Remove std::cmp::cmp2.

It isn't used anywhere and `cmp2(a, b, c, d)` is identical to
`(a, b).cmp(&(c, d))`.
Tag derived impls with #[automatically_derived]

This will enable rustdoc to treat them specially.
auto merge of #12899 : brson/rust/cleanbacktrace, r=alexcrichton

After `make clean` I'm seeing the build break with

```
cp: cannot stat ‘x86_64-unknown-linux-gnu/rt/libbacktrace/.libs/libbacktrace.a’: No such file or directory
```

Deleteing the libbacktrace dir entirely on clean fixes.
auto merge of #12929 : sfackler/rust/automatically-derived, r=cmr

This will enable rustdoc to treat them specially.

I also got rid of `std::cmp::cmp2`, which is isomorphic to the `TotalOrd` impl for 2-tuples and never used.
auto merge of #12924 : Florob/rust/bigint, r=alexcrichton

This is a minor optimization of the bignum module. The improvements mostly come from avoiding allocations and boundary checks. This also switches all of libnum to vec_ng::Vec.