b/15091601 Step one of refactoring widgets.  Dead code from startup removed, WidgetDescriptor made into a convenience class
Removed programs script, folded options into regular startup structure, made separate file for refresh queue
Added WidgetList class and explicit widget definition, and started using it to build UI
Added WidgetList class and explicit widget definition, and started using it to build UI
Removed JoinDescriptor (GGRC.Mappings now does everything we needed from it), and removed menu_treefrom dashboard controller
Merge remote-tracking branch 'origin/feature/refactor-widget-creation' into feature/refactor-widget-creation

Conflicts:
	src/ggrc/assets/javascripts/apps/business_objects.js
	src/ggrc/assets/javascripts/apps/dashboard.js
	src/ggrc/assets/javascripts/apps/quick_search.js
	src/ggrc/assets/javascripts/models/mappings.js
Added documentation around new classes
Merge branch 'develop' into feature/refactor-widget-creation

Conflicts:
	src/ggrc/assets/javascripts/apps/dashboard.js
Modified workflows extension to use new mapping and widget classes
Merge pull request #1393 from reciprocity/feature/refactor-widget-creation

Refactor GGRC startup and main frame creation routines.