Merge some numeric traits with Real and don't re-export RealExt

The methods contained in `std::num::{Algebraic, Trigonometric, Exponential, Hyperbolic}` have now been moved into `std::num::Real`. This is part of an ongoing effort to simplify `std::num` (see issue #10387).

`std::num::RealExt` has also been removed from the prelude because it is not a commonly used trait.
Remove ApproxEq and assert_approx_eq!

This trait seems to stray too far from the mandate of a standard library as implementations may vary between use cases.
Start the span for a path in a view_path at the correct place (at the start of the path, rather than at the start of the view_path).
auto merge of #11402 : bjz/rust/remove-approx, r=alexcrichton

This trait seems to stray too far from the mandate of a standard library as implementations may vary between use cases. Third party libraries should implement their own if they need something like it.

This closes #5316.

r? @alexcrichton, @pcwalton
auto merge of #11412 : bjz/rust/num-cleanups, r=alexcrichton

The methods contained in `std::num::{Algebraic, Trigonometric, Exponential, Hyperbolic}` have now been moved into `std::num::Real`. This is part of an ongoing effort to simplify `std::num` (see issue #10387).

`std::num::RealExt` has also been removed from the prelude because it is not a commonly used trait.

r? @alexcrichton
auto merge of #11414 : nick29581/rust/span, r=alexcrichton

...at the start of the path, rather than at the start of the view_path.

Fixes #11317
Remove eof() from io::Reader
auto merge of #11376 : alexcrichton/rust/remove-eof, r=pcwalton

This is something I have been meaning to do for awhile, but upon inspection of the `eof` method on all of the `Reader` impls you may find some interesting surprises. The method returns a good answer for almost all wrapped I/O objects (buffered readers, mem readers, util readers, etc), but the actual return value on all I/O objects themselves is almost always useless.

Almost no I/O object other than a file actually knows when it's hit EOF or not. I think that pretending that all objects know when they've hit the end when almost none do is probably a bad idea. I can't really come up with a good answer to "is this file descriptor at eof" or "is this tcp stream at eof" much less "is this udp socket at eof". Due to being unable to answer these questions for *all* readers, I believe that it shouldn't be a part of the core `Reader` trait.
libsyntax: Renamed types, traits and enum variants to CamelCase.
Updated librustdoc and librustpkg to use the proper UpperCase names from libsyntax.