[SPARK-2141] Adding getPersistentRddIds and unpersistRDD to Java/Python

JIRA issue: https://issues.apache.org/jira/browse/SPARK-2141

This PR exposes ```sc.getPersistentRddIds()``` and ```sc.unpersistRDD()``` in 
Java and Python APIs. Example,

```
>>> rdd = sc.parallelize(range(4)).cache()
>>> rdd.count()
4
>>> rdd.id() in sc.getPersistentRddIds()
True
>>> sc.unpersistRDD(rdd.id())
>>> rdd.id() in sc.getPersistentRddIds()
False
```

I personally don't think there is too much downside of making ```SparkContext.unpersistRDD``` public (if only to keep Scala API in sync with Java/Python), since RDD ids are already known to users and they are unique per SparkContext. I think the key question here is whether there is legitimate use case we want to support and whether making it public is the best approach for supporting the use case.