Mlbileschi update partial function documentation

To include the fact that the caller is responsible for checking 'isDefinedAt', except when using partial functions defined using {} and case statements.
I think Max means:

    scala> val pf1 = new PartialFunction[Int, Int] {
         |   def isDefinedAt(i: Int) = i == 0
         |   def apply(i: Int) = i
         | }
    pf1: PartialFunction[Int,Int] = <function1>

    scala> pf1.isDefinedAt(1)
    res0: Boolean = false

    scala> pf1(1) // should not be defined
    res1: Int = 1

    scala> val pf2: PartialFunction[Int, String] = { case 0 => "zero" }
    pf2: PartialFunction[Int,String] = <function1>

    scala> pf2.isDefinedAt(1)
    res2: Boolean = false

    scala> pf2(1)
    scala.MatchError: 1 (of class java.lang.Integer)
      at scala.PartialFunction$$anon$1.apply(PartialFunction.scala:248)
      at scala.PartialFunction$$anon$1.apply(PartialFunction.scala:246)
      at $anonfun$1.applyOrElse(<console>:7)
      at $anonfun$1.applyOrElse(<console>:7)
      at scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)
      ... 32 elided
That said, I'm not sure if it makes sense to call that out as a time when you don't need to call isDefined...