1. A method for presenting an interactive program, comprising: receiving a program as a continuous stream of video data; receiving digital data for supporting interactive functionality in relation to the received program, the digital data including both supplemental program content that enables viewer interactivity with the program and a display layout prescribing how the supplemental content and the program are to appear in relation to one another, wherein the digital data is received in response to user input through an electronic programming guide (EPG) allowing selection of uniform resource locators (URLs) associated with digital data; displaying the program within a program boundary on a visual display device; presenting the supplemental program content from the digital data in a presentation format on the visual display device which enables the interactive functionality; dynamically controlling location and shape of the program boundary and the presentation format of the supplemental program content relative to the program boundary on the visual display device based on the received digital data, wherein changes in the location, shape, and relative sizing of the program boundary and a boundary of the supplemental program content are based on time elapsed since a start time of the program; and presenting both the supplemental program content and the program simultaneously, wherein the supplemental program content is presented outside of the program boundary.