Committing a bunch of mixed up work... sorry for the mixed up changes. This includes some work on the data model, some work on the widget framework, and inclusion of jquery ui for widget stuff