rustc: Stop declaring unused upcalls
rt: Remove shape code
Cleanup how we handle proto in types, remove unsound subtyping

Fixes #1896 which was never truly fixed, just masked.
The given tests would have failed had they used `~fn()` and
not `@fn()`.  They now result in compilation errors.

Fixes #2978.

Necessary first step for #2202, #2263.
Add end_of_file handling to TcpBufferedSocket.

This fixes #3891.

Also removed debug!(...) statement from socket destructor which causes a
crash when the logging level is set to debug.
Fix trailing whitespace issues
rustc: reuse const vals, translate fn paths as consts. Close #2530.
Implement Ptr trait for mutable unsafe pointers. Closes #3926.
Merge pull request #3932 from z0w0/mutptr

Implement Ptr trait for mutable unsafe pointers. Closes #3926.
libstd: Implement a thread pool. r=brson
rustc: Implement the Drop trait. r=brson
rustc: Long lines
Rename src/rustc to src/librustc. Use the driver crate
Fix install target for new libraries
Fix make install rules for new libraries
rustc: Autovivify modules even when a type def is present in resolve. Closes #3931. rs=nasty-bug
rustc: Support irrefutable patterns in function arguments. r=nmatsakis
Fix whitespace issues from previous commits.

Also added test for #3891.
Attempt to fix tools.mk under cross-compile
Merge pull request #3923 from am0d/master

Fixes issue #3891
Change option::expect to not require a Copy bound, and move instead.