I should have mentioned this before, but we could consider using `this.type` instead in the Base RDD class for these methods.  I'm not sure if that is breaking API or too much scala magic though. @mateiz ?