Made stage draggable.

Use setPosition instead of setPositionAbsolute.
Tweaked max age.
Make stage fill the browser client area

When the browser is resized, resize the Kinetic stage to fill the new width.
Disable overflow on the body so that scrollbars never appear.
Remove jquery. not used
Redcuce jumping effect when new nodes are created.

Incorporated fork of Springy.js that places nodes close to their
parents when they are created, instead of creating new nodes at a
random location. Works well to reduce the jumping effect.

Added a bit of logic to hide the node's KineticJS shape until it
has been positioned by springy, to avoid the effect of the node
momentarily appearing at the origin.
Replaced aging algorithm with distance algorithm (Dijkstra)

Implemented Dijkstra's path finding algorithm to compute the shortest
distance between the new node and and every node in the graph. If the
shortest distance is greater than a threshold, the node is removed from
the graph.
Refactor distance solving logic into a separate class.
Springy optimization attempt

Attempt to improve springy performance by only applying coulomb's law when
nodes are close to each other. The graph doesn't expand as much, and
actually gives it a more cohesive feel.