graph: Move port link anchor calculation into port widget
Its better style for the port to calculate its own coordinates than for the graph to do it.
The new code should also be able to better cope with CSS on the port where the border or padding on the left and right aren't the same.