1. A non-transitory computer-readable medium containing instructions configured to direct a processor to: (a) operate a Shell Framework comprising a programming interface and an infrastructure to act as an intermediary between separate computer programming constructs; (b) operate said Shell Framework comprising said programming interface to communicate bi-directionally with at least one Logic construct, said at least one Logic construct is separate from said Shell Framework; (c) operate said Shell Framework comprising said programming interface to accept notification messages pertaining to at least one Data construct from said at least one Logic construct; (d) operate said Shell Framework comprising said programming interface to communicate bi-directionally with at least one GUI construct, the at least one GUI construct is separate from said Shell Framework and said at least one Logic construct; (e) operate said Shell Framework comprising said programming interface to accept said notification messages pertaining to said at least one Data construct from said at least one GUI construct; (f) operate said Shell Framework to transmit said notification messages pertaining to said at least one Data construct to said at least one GUI construct or to said at least one Logic construct; and (g) wherein said Shell Framework enables said at least one Logic construct and said at least one GUI construct to communicate said notification messages pertaining to said at least one Data construct without said at least one Logic construct and said at least one GUI construct directly communicating said notification messages with each other.