Fixes #8, "Allow control over which `GraphState` operations are depicted by server". Enables use of multiple visualized GraphStates in the same program. Downside -- you have to call `update()` at the end of your program.
Moved that functionality into `abp.GraphState`, so that you can
just run `state = abp.GraphState(nx.Graph(((0,1),)))`, `state =
abp.fancy.GraphState(nx.Graph(((0,1),))` or whatever.
Made sure that `graph.js` dumps old graphs after use, and ensured that
`examples/stress_test` shuts down the connection after use (don't create millions
of clients).
By default the server echoes messages to all clients.
The fancy.GraphState client was never calling ws.recv()
And hence a buffer was filling up somewhere
And we were hanging.
Adding a ws.recv() fixed the problem.