1. A computer program product comprising: at least one non-transitory storage medium; at least one code object written in an object oriented language and digitally encoded in the at least one non-transitory storage medium, said at least one code object defining at least one class define reusable menuing functionality for menus configured to interactively navigate among a plurality of linearly ordered self-contained software objects, wherein said classes are configured to be imported into a source file, where said source file is configured to be placed in a project file that also includes a plurality of custom linearly ordered self-contained software objects, which are bound to interactive menus having functionality provided by the at least one class, wherein each of the said self-contained software objects is programmatically linked to said at least code object without modifying source code of the self-contained software object, wherein said at least one code object defines a linear ordering of the self-contained software objects.