The Internet was designed under the assumption that end-hosts are stationary and have one interface. Current mobile devices have multiple network interfaces, such as Wi-Fi, LTE, WiMAX, and possibly Ethernet. Such diverse network connectivity can be used to increase both reliability and performance by running applications over multiple links sequentially, for a seamless user experience, or in parallel, for bandwidth and performance enhancements. Users are also consuming Internet services from multiple locations and devices, such as smartphones, tablets, laptops, and IP-enabled TVs. The existing networking stack, however, offers almost no support for intelligently exploiting such network, location and device diversity.Since, most Internet devices today are mobile, we propose a unified networking architecture that makes optimal use of a heterogeneous dynamic environment, both in terms of networks and user devices. The system core functionalities include mobility, multi-homing, multipath, and disruption tolerance. The system enables mobile nodes to make decisions about how and when to use each or a combination of networks, in a secure manner. With this new architecture, we envision a shift from current applications supporting a single network, location, and device at a time, to applications that can support multiple networks, multiple locations, and multiple devices.