Agreed.  I think two parameter lists were used for "consistency" with
Pregel.   Alternatively, we could use just one parameter list in both cases
but then for Pregel the user would need to supply the message type to the
run function or annotate the UDFs.

As a side note, we haven't optimized/tested the GraphLab API recently.
 Should we drop it for the current release given that the Pregel API is
actually a fusion of GraphLab and Pregel anyways?