rustdoc: update formatting of fn signatures and where clauses to match style rfcs
Recent updates to style RFCs ([where clauses](https://github.com/rust-lang-nursery/fmt-rfcs/issues/38), [function definitions](https://github.com/rust-lang-nursery/fmt-rfcs/issues/39)) changed the "canonical" style for these items, so this is a rustdoc update to make it emit that style where necessary. This is mainly a conversion from visual indent to block indent, which helps out in situations where there was excessive indent causing lines to wrap regardless.
Samples:
![std::iter::IntoIterator](https://cloud.githubusercontent.com/assets/
5217170/
24712947/
e586604c-19e9-11e7-87ae-
4fe64d689dc3.png)
![excerpt from std::iter::Iterator](https://cloud.githubusercontent.com/assets/
5217170/
24713209/
91e65112-19ea-11e7-9ff8-
d4cf6b31aae1.png)
![std::iter::FromIterator](https://cloud.githubusercontent.com/assets/
5217170/
24713138/
59f36114-19ea-11e7-9dbb-
5f5ba7126e2e.png)
![std::cmp::min](https://cloud.githubusercontent.com/assets/
5217170/
24713038/
1bab88b4-19ea-11e7-935d-
defed5648de4.png)
![some trait impls on std::collections::HashMap](https://cloud.githubusercontent.com/assets/
5217170/
24713251/
b7ef69e8-19ea-11e7-94a7-
e01fbf89fa31.png)
![`fn extract_code_blocks`, an example given in #40687](https://cloud.githubusercontent.com/assets/
5217170/
24713159/
672717cc-19ea-11e7-9acb-
6ac278b90339.png)
![excerpt from itertools::Itertools](https://cloud.githubusercontent.com/assets/
5217170/
24713323/
f06716ea-19ea-11e7-94cc-
6ef68d9980ec.png)
fixes #41025 and #40687
r? @rust-lang/docs