Add Toolbox module

Minor improvements to graph demo
Create element at mouse position
Snap connection to input connectors during drag
Update elements when input properties change