Sebastian,
Good to see you're making some progress squashing bugs.
I've played around a little bit with the code. Here are a few observations:
1. Points (ports) need to be shown on the screen independent of whether or not they are attached to connectors.
2. Creating a connector should use a pre-existing point (port) if the cursor is near a point at the start or create a new point if it is not. The same thing should happen for the end point.
3. A distinction needs to be made between dragging a freely movable start/end point and moving a connector end from one port to another.
4. In your current code, drawing a simple connector creates a start point and an end point at the beginning of creating a connector. At the end, a new end point is created but doesn't seem to be actually used.
5. There needs to be one final redraw at the end of creating a connector.
Since getting something out of Doug is like pulling teeth, I've put together a page on what I envision SVG 2 connectors to look like.[1] The key point (no pun intended) is that connection points can be defined using percentage values related to the objects they are part of or to the connector end points themselves. The one problem I have is how to specify a connection point inside a <symbol>. I hope to discuss this at the next SVG Working Group meeting. Your feedback (or anybody else's feedback) is welcome.
Tav