Bug in capacity scaling min-cost flow

Discovered in #1280.

Test case:

```python
>>> G = nx.DiGraph()
>>> G.add_node(0, demand=-4)
>>> G.add_node(1, demand=2)
>>> G.add_node(2, demand=2)
>>> G.add_node(3, demand=4)
>>> G.add_node(4, demand=-2)
>>> G.add_node(5, demand=-2)
>>> G.add_edge(0, 1, capacity=4)
>>> G.add_edge(0, 2, capacity=4)
>>> G.add_edge(4, 3, capacity=4)
>>> G.add_edge(5, 3, capacity=4)
>>> G.add_edge(0, 3, capacity=0)
>>> nx.network_simplex(G)
(0, {0: {1: 2, 2: 2, 3: 0}, 1: {}, 2: {}, 3: {}, 4: {3: 2}, 5: {3: 2}})
>>> nx.capacity_scaling(G)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/line/too/long/algorithms/flow/capacityscaling.py", line 349, in capacity_scaling
    raise nx.NetworkXUnfeasible('No flow satisfying all demands.')
networkx.exception.NetworkXUnfeasible: No flow satisfying all demands.
```

In the (Δ = 4)-scaling phase, `capacity_scaling` attempts to find a path to send flow from 0 to 3, finds none and declares the problem infeasible instead of moving to the next scaling phase.