I'm writing a drawing program with kind of a complex gui (at least for my skill level), and I'm wondering how to structure it. The behavior is pretty standard: the user can choose primitive shapes to...