Give a high level description of this widget
Semantics / Rationale
What is the behavior of the widget? What data structure is it intended to model, or what rationale is there for needing it?
What are the fundamental requirements this widget must meet in order to solve the problem for which it was created?
What is the programming interface to the widget?
What other issues will need consideration?
What additional code must be written to support this widget? What platform implementations / APIs can be leveraged when implementing this widget?