I have a few ideas for encouraging arrangements of definitions to have
more life in the sense of Christopher Alexander:
quantize the x axis to discrete columns
don't force a single grid; that can look boring. Each node occupies
600px of width, so quantizing at multiples of 100 gives us 6 possible
arrangements.
always position new nodes within the current viewport
always position new nodes at least some amount of padding above to
give the node above some room to grow
forbid overlap
moving a node against another should push the other node as well
I want a node to yield some resistance, but I don't want resistance
to grow linearly by the number of nodes pushed