Connect trip origin/destination to each other when they lie on the same edge.
Merge remote-tracking branch 'upstream/master'
test for the reverse case - origin/dest on same edge but dest before origin.
Clean up toString in State.java.
PartialEdge should have the same turn angles as its parent. Also, more testing.
add some cursory testing of computing sub-paths through the thrift API.
Merge remote-tracking branch 'flamholz/master'