1. In a computing device on which multiple executables run, a method for receiving updates to context information from a first executable and notifying a second executable of the updates, the method comprising: receiving, at a context engine, a request from the second executable to register the second executable to receive notifications of updates to the context information of the computing device; the context engine associating the second executable with the context information, wherein the context information is stored in a computer storage medium; receiving, at the context engine, a request from the first executable to update the context information; the context engine updating the context information, wherein the context information is stored as a client object that contains the following: a first context object that defines the context information before the context information was updated, a second context object that defines the current context information, a property that identifies the type of the first and second context objects, and a flag that indicates whether the first executable is currently resident in memory; upon updating the context information, the context engine determining that the second executable is registered to receive notifications of updates to the context information; and the context engine sending a notification to the second executable that the context information has been updated; and upon receiving the notification, the second executable accessing the client object and updating system settings of the computing device based on the contents of the client object, wherein the system settings comprise one or more of: a default printer setting; a default internet browser home page; and internet browser proxy settings.