Improve PartialFunction/Function1 docs

TODO: if this is what we want, all FunctionX should be documented as "*partial* function of X arguments" like I did for `Function1`.

Prompted by https://groups.google.com/d/msg/scala-language/QuYtWldPNi8/hW2FjM0x96QJ. Apparently my earlier doc fix wasn't enough.

A question on the API: I get why isDefinedAt = true still allows for exceptions (changing that would require solving the halting problem, for compiler-generated partial functions), but I don't get why isDefinedAt = false does not require exceptions. The new doc explains this, and I don't assume this could be changed, but I'm still curious about the rationale.

Review by @phaller (for the library) & @heathermiller (for the docs).