Tuned shouldDebug flag computation, turned DebugConfig into static
Less method calls by caching more and earlier guards and breaks for loops
Reduced huge overhead by concurrent write of jar.signature file to HDFS and by LOG.debug

Now, the relative running time of graphColoring on 1M-3reg-bipartite with graft is down to ~2X from 4-12X.
Synchronized initialize with early skip + minor code cleanup
pagerank example compatible with BipartiteInput
For performance intercepting uses two flags to switch off once done

One on bottom to short circuit compute(), and another on top to stop
intercepting sendMessage() and sendMessageToAllEdge(),
getAggregatedValue() once enough has been captured.
giraph-debug -E for disabling exception capturing
Asynchronous HDFS writing to reduce impact on Giraph performance