Change the output graph format in keyphrases_graph

The new graph format maintains separate lists of nodes and edges and
also contains more information than just connectivity:
  * Node support (# of documents "containing" that node's label
    according to AST metrics)
  * Confidence (The "weight" of the edges meaning the degree of
    connectedness between nodes)

Sample:
{
    "nodes": [
        {
            "id": <id>,
            "label": "keyphrase",
            "support": <# of documents containing the keyphrase>
        },
        ...
    ]
    "edges": [
        {
            "source": "node_id",
            "target": "node_id",
            "confidence": <confidence_level>
        },
        ...
    ]
}