A survey of the role of multicommodity flow and randomization in network design and routing