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 https://issues.scala-lang.org/browse/SI-5370's earlier doc fix wasn't enough (EDIT: I misattributed the fix to myself, while I just reported a bug).

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).