libnative: Implement get_host_addresses.
native: Don't use timerfd on Android

It doesn't seem to exist.
Replace '*' by '..' in the doc of pattern matching
Add '@' subpattern binding and examples to manual and tutorial
Remove reexport field
Move macro_rules! macros to libstd

They all have to go into a single module at the moment unfortunately.
Ideally, the logging macros would live in std::logging, condition! would
live in std::condition, format! in std::fmt, etc. However, this
introduces cyclic dependencies between those modules and the macros they
use which the current expansion system can't deal with. We may be able
to get around this by changing the expansion phase to a two-pass system
but that's for a later PR.

Closes #2247
cc #11763
Delete ignore! macro

This was a holdover from when we didn't allow nested comment blocks
(think #if 0). It isn't used anywhere.
libstd: Use iotest! for for get_host_addresses.
libnative: Avoid gai_strerror on windows.
auto merge of #11732 : luqmana/rust/native-getaddrinfo, r=alexcrichton

The last bit I needed to be able to use libnative :P
auto merge of #11748 : brson/rust/timerfdandroid, r=alexcrichton

It doesn't seem to exist.
auto merge of #11764 : Armavica/rust/doc_patmatch, r=pcwalton

I also removed the obsolete '*' wildcard from the manual.
auto merge of #11772 : sanxiyn/rust/reexport, r=cmr

The field is always set to true.
auto merge of #11774 : sfackler/rust/move-macros, r=pcwalton

They all have to go into a single module at the moment unfortunately.
Ideally, the logging macros would live in std::logging, condition! would
live in std::condition, format! in std::fmt, etc. However, this
introduces cyclic dependencies between those modules and the macros they
use which the current expansion system can't deal with. We may be able
to get around this by changing the expansion phase to a two-pass system
but that's for a later PR.

Closes #2247
cc #11763
Implement barrier.