Add leftOuterJoin() and rightOuterJoin() to the RDD class.

(Minor point) How do we know this is the returned order? Is the result order deterministic? If not, is there an easy way to achieve something similar to a set?