Rewrote code such that 0-hop circuits are actually represented by a circuit, which means they can be chosen as such for data transfer.

Found another windows 'bug' due to Reuse=True in port binding, not sure how to fix this yet.