libcore,std,syntax,rustc: move tests into `mod tests`, make them private (no pub mod or pub fn).
librustdoc: move tests into dedicated tests module.
auto merge of #5895 : huonw/rust/no-pub-tests, r=graydon

This patch is a sledge hammer that moves all tests into `#[cfg(test)] mod test { .. }`, and makes them private, there were several instances of `pub mod tests { #[test] pub fn ... } `.

(The reason for this is I was playing with using `syntax` to index code ([result so far](http://www.ug.it.usyd.edu.au/~hwil7821/rust-api/)) and it was getting some junk from the tests.)

The rustdoc commit is particularly brutal, so it's fine if that one isn't landed.