Codebase refactoring

I refactored the code substantially, and now all the Vertex partition specific implementation is encapsulated in VertexPartition, and GraphImpl / VertexSetRDD (renamed VertexRDD) don't operate on bitmaps anymore.

Also added an EdgeRDD[ED] class to replace the previous RDD[Edge[ED]].