Let user connect components with lines

I think we are going to need to think about how we can hook in validation here, and how to feed that back in the UI (not for this PR though). Any ideas?