Algorithmic Aspects of Flows in Networks