parallel simrank

This is the parallel simrank engine pull request, separate from the local simrank and random engine.
Is this the right way?
`_ _def binarySearchE(list: Array[Edge[Int]], target: VertexId)`

`_ _ _ _(start: Int=0, end: Int=list.length-1) : Int = {`