added context to the matching response

Added the screen context to the matching response widget.
overhaul of widget responses

Created a widget definitions file for sharing handler types. Added selection
response widget for selecting from a list. Starting moving towards using the
improved iterators and filtering provided by the shim library. This code is
likely to continue changing.