1. A computing apparatus comprising: one or more computer readable storage media; and an application comprising program instructions stored on the one or more computer readable storage media and executable on single thread, the program instructions comprising: a plurality of task modules, each of which when executed on the single thread by a processing system returns control to a scheduler module upon completing; and the scheduler module, wherein the scheduler module, when executed on the single thread by the processing system upon control returning from any of the plurality of task modules, identifies to which of the plurality of task modules to grant control based at least in part on a relevance of each of the plurality of task modules to a user interaction.