Bug fixes.
Merge branch 'demo' into autorouter_port
Fixed most of the overlapping stems issue.

They can still overlap in cases where there are multiple connections between two ports. They should only overlap on one side of it, however.
Merge branch 'autorouter_port' into demo