create dedicated RDD for Scala vs Java

Instead of dealing with ad-hoc, confusing and complicated conversions
between Scala and Java collections, the RDD has been broken down into two
dedicated implementations that internally use only a Java or a Scala collection
and provide the appropriate signature.
These can be used from both Java and Scala if somebody wants two however in this case
they'll have to handle the conversion themselves.