Added support for extern crate ... as ...;

For review. Not sure about the link_attrs stuff. Will work on converting all the tests.

extern crate "foobar" as foo;
extern crate foobar as foo;

Implements remaining part of RFC #47.
Addresses issue #16461.

Removed link_attrs from rust.md, they don't appear to be supported by
the parser.
As accepted, the RFC only lists `extern crate foo as bar` as an *alternative*, it was only accepted that we would alter the syntax to `extern crate "foo" as bar`.