Implemented risk measurement for edges in the connectivity graph between neurons.

The javascript side needs work.
graph.py: do not label branch nodes when minifying an arbor by synapse clustering.
graph.py: do not compute risk for autapses; rather, label them as so.
Better docs for a function in tree_util.py
graph widget: checkbox toggles for names and to cut names at the first semicolon.
graph.py: compute edge risk only when not minifying arbors.
Make the middleware report the full stack trace of any exception.
graph.py: label branch nodes appropriately in minified arbors.
graph widget: simplify and improve.

 * start off with a force-directed layout.
 * render branch nodes smaller in minified arbors
 * simplify GUI: no more "update" button, selecting the layout triggers re-layout.
 * acknowledge state: if short labels, or if no labels.
Merge pull request #549 from perlman/master

Source-type dependent paths to overview (mini) images.
Fix NetworkML export by adding characters in front of numbers
when assigning these to any "name" attribute.
Otherwise, neuroConstruct fails to import.
NetworkML export: include the neuron's name.
Webglapp: enable changing the color of the mesh(es) in the options dialog.
While at it, properly repaint the mesh when loading it, and remove unused code.
Clustering: Add toolbar button to create clustering window
Clustering: Add basic clustering front- and back-end
Clustering: allow sub-path as features

When selecting the "Use sub-paths as features" option, all sub-paths
starting at the root on a way to a leaf will be added as features, too.
This means a path doesn't need to end with an ontology defined leaf, but
it can also end in the middle to be respected by the clustering.
Clustering: use SciPy to do the actual clustering
Add gRaphael line graph v0.5.1 library
Add world/screen coordinate translation methot to gRaphael line chart
Add min/max axis options to gRaphael line chart