Test PartialEq multidispatch
Treat builtin bounds like all other kinds of trait matches. Introduce a simple hashset in the fulfillment context to catch cases where we register the exact same obligation twice. This helps prevent duplicate error reports but also handles the recursive obligations created by builtin bounds.
Correct various compile-fail tests. Most of the changes are because we
now don't print duplicate errors within one context, so I sometimes
had to break functions into two functions.
FIXME(#19481) -- workaround valgrind cleanup failure (but the code is nicer this way anyhow)
Fixed out of date comment on `copy_memory`
libtest: get rid of dependency to ToJson

deriving encodable + using json::PrettyEncoder removes the only ToJson trait implementation in the rust repository outside of libserialize
New Guide: Ownership

This replaces the previous "Lifetimes guide," since we are discussing
things from an owernship perspective now.
Remove outdated comment.

https://github.com/rust-lang/rust/pull/19472#issuecomment-65370278
Overload the `==` operator

- String == &str == CowString
- Vec ==  &[T] ==  &mut [T] == [T, ..N] == CowVec
- InternedString == &str
Replace `equiv` method calls with `==` operator sugar
Remove unused transmutes from tests
Fix fallout
Deprecate Equiv
rustdoc: Fixed a missing rendering of ForeignStaticItems.
rustdoc: Refactored various uses of ItemType.

In particular, ItemType variants are no longer reexported. Since
we already do namespace them via `item_type` mod, it's fine.
rustdoc: Removed Foreign{Function,Static} item types.

They are just (unsafe) functions and static items to most users
and even compilers! The metadata doesn't distinguish them, so Rustdoc
ended up producing broken links (generated `ffi.*.html`, links to
`fn.*.html`). It would be best to avoid this pitfall at all.
rustdoc: Avoid rendering foreign items to the sidebar.

Otherwise the generated documentation is 30% larger. The sidebar
renders an entry for each item to all items, so large modules have
O(n^2) items rendered in the sidebars. Not a correct solution, but
at least it works.
test: Ignore issue-19501 pretty for now

I don't have enough time to investigate this thoroughly, so for now let's get
the queue moving by ignoring this test.

cc #19501
Remove feature gates for `if let`, `while let`, and tuple indexing

Closes #19469
make fmt_macros and rustdoc have standard doc attributes