Network Science and Engineering: A theory of network architecture