B.1 Top level, main program

fudlogue :: F a b -> IO (),
used on the top level to connect the main fudget to the Haskell I/O system.
shellF :: String -> F a b -> F a b,
creates shell (top-level) windows. All GUI programs need at least one of these.
These functions are discussed further in Section 10.1.