Why should it be illegal to call compute() on an empty RDD?  In Scala, I can still perform ordinary operations on an empty collection.  Why not just return Iterator[T].empty?