Second cut at application UI

- I'm trying to organize things inside frames better, so that there's
  less cut and paste.
- I'm trying to make the search form driven off a single dictionary, and
  state changes which are consistent across widgets.
- I'm getting closer to what I want, so this is a checkpoint checkin to
  be sure I don't lose the work I've done.