Let user connect components with lines

Yes. If you are happy with the solution in general I will do the tests.