Using Interaction Object Graphs to Specify and Develop Graphical Widgets