Convert libraries to use #[plugin_registrar]
Convert tests to use #[plugin_registrar]
Add a test for deprecated phase(syntax)
Document rustc::plugin
Macro crates now depend on librustc
auto merge of #14554 : kmcallister/rust/plugin_registrar, r=cmr

This implements the design in rust-lang/rfcs#86.  It shouldn't be merged until that RFC is accepted, but it would be great if somebody has time to review the code before then.
auto merge of #14590 : pcwalton/rust/overloaded-call, r=nick29581

gate.

This is part of unboxed closures.

r? @nick29581
std: Remove the as_utf16_p functions

These functions are all much better expressed via RAII using the to_utf16()
method on strings. This refactoring also takes this opportunity to properly
handle when filenames aren't valid unicode when passed through to the windows
I/O layer by properly returning I/O errors.

All previous users of the `as_utf16_p` or `as_utf16_mut_p` functions will need
to convert their code to using `foo.to_utf16().append_one(0)` to get a
null-terminated utf16 string.

[breaking-change]
Moved integer trait and functions to submodule
Cleanup bigint
Add a --color flag to test binaries

It uses the same behavior as rustc's.
std: Move dynamic_lib from std::unstable to std

This leaves a deprecated reexport in place temporarily.

Closes #1457.
Add test for issue #13446

Closes #13446
collections: Add missing Default impls

Add Default impls for TreeMap, TreeSet, SmallIntMap, BitvSet, DList,
PriorityQueue, RingBuf, TrieMap, and TrieSet.
native: add more info to the native unimplemented error.

This refers to green, which (AFAICT) has everything implemented. In
particular, this will help guide people to get working signal handling
via libgreen.
std: adjust the TCP io doc example to work reliably.

Fixes #11576 by making the code never run (and hence never
pass when the test was marked `should_fail`).
rustdoc: Correctly classify enums/typedefs

Both of these items are surfaced as a DefTy, so some extra logic was needed in
the decoder module to figure out whether one is actually an enum or whether it's
a typedef.

Closes #14757
auto merge of #14694 : aochagavia/rust/num-cleanup, r=alexcrichton
Add a test for nested Arena.alloc
librustc: Implement sugar for the `FnMut` trait