1. A computer-readable storage medium memory device having processor-executable instructions stored thereon that, when executed by one or more processors, implement an application framework for developing an application, comprising: an application object that manages resources of an application; a navigation component that provides navigation functionality for the application; an application lifecycle management component that defines at least how the application is installed on a computing system; and a manifest that specifies a first subset of components of the application as required, a second subset of components of the application as on-demand, and a third subset of components of the application as online, with the first, second, and third subsets of components of the application differing, the second subset of components being downloaded in the background as a user interacts with the application, wherein when a specific component of the second subset of components is requested, the specific component takes precedence over remaining components of the second subset of components and is downloaded on-demand while the remaining components are downloaded contemporaneously in the background.