More accurate spans
Make build products depend on their target directories.

This is an attempt to address Issue #3326 by adding [*order-only*][1]
prerequsites of each build product on the directory where it is to go.
It is important that the prerequisites be order-only, since the
timestamp on a parent directory is not relevant to whether a product
is out of date; the parent directory merely needs to exist.

(This use case of generating target directories was provided as an
[example][2] of how order-only prequisites are used.)

[1]: http://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html

[2]: http://www.kolpackov.net/pipermail/notes/2004-January/000001.html
rt: glob, globfree dummy function for android
Fix syntax: had to use escaped $$ to have an effect after first expansion.
Fix another goof: consistently use parent directory of target for rule.

(I wonder if there's a better way to write this in the rule itself;
i.e. something like `$$(dirname $$@)`.  But for now this will do.)
auto merge of #6240 : brson/rust/snapshots, r=brson
small fix to the tutorial-ffi destructor example

The previous example was erroneously attempting to destroy
uninitialized memory, which was often zeroed (masking the bug).
rt: rust_android_dummy.cpp fix for make tidy
auto merge of #6234 : yichoi/rust/glob-dummy-pull, r=thestinger

transitional patch to resolve compile/link failure on android

after #6161 landed, I've encountered below errors since android does not support glob in libc.

/opt/ndk_standalone/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: /home/yichoi/rust_work/build/x86_64-unknown-linux-gnu/stage1/lib/rustc/arm-linux-androideabi/lib/libcore-c3ca5d77d81b46c1-0.7-pre.so: error: undefined reference to 'glob'

/opt/ndk_standalone/bin/../lib/gcc/arm-linux-androideabi/4.6/../../../../arm-linux-androideabi/bin/ld: /home/yichoi/rust_work/build/x86_64-unknown-linux-gnu/stage1/lib/rustc/arm-linux-androideabi/lib/libcore-c3ca5d77d81b46c1-0.7-pre.so: error: undefined reference to 'globfre

Since android does not have `glob.h`, `glob_t` definition comes from
https://groups.google.com/forum/?fromgroups=#!topic/android-ndk/vSH6MWPD0Vk

#6100 should be resolved.
auto merge of #6244 : thestinger/rust/ffi, r=z0w0

The previous example was erroneously attempting to destroy
uninitialized memory, which was often zeroed (masking the bug).
auto merge of #6235 : pnkfelix/rust/issue-3326-play-with-directory-orderonly-prereqs, r=z0w0

r? (for #3326)
Fix span tests
auto merge of #6208 : sanxiyn/rust/accurate-span, r=sanxiyn
core::rt: Remove Close trait

We will just use RAII for now.
core::rt: Fix a warning about unnecessary mutable variable
core::rt: Begin implementing TcpStream

This ended up touching a lot of code related to error handling.
core::rt: Clean up the interface to rtio

Make names that better match rt::io. Return error types.
core::rt: Improve docs
core::rt Restructure some modules

Put all uv code under rt::uv, as if it were in its own crate.
Pull local_sched out of rt::sched.
core::rt: Use unsafe pointers instead of transmuted regions