You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by ca...@apache.org on 2018/05/05 18:02:15 UTC

[royale-asjs] branch feature/refactor-separation-core-basic created (now 16c0dcd)

This is an automated email from the ASF dual-hosted git repository.

carlosrovira pushed a change to branch feature/refactor-separation-core-basic
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git.


      at 16c0dcd  reafactor to separate Basic from Core and make new UI Sets not depend from Basic

This branch includes the following new commits:

     new 16c0dcd  reafactor to separate Basic from Core and make new UI Sets not depend from Basic

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


-- 
To stop receiving notification emails like this one, please contact
carlosrovira@apache.org.

[royale-asjs] 01/01: reafactor to separate Basic from Core and make new UI Sets not depend from Basic

Posted by ca...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

carlosrovira pushed a commit to branch feature/refactor-separation-core-basic
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git

commit 16c0dcd643974fe708fd67a3774ea6e35e879811
Author: Carlos Rovira <ca...@apache.org>
AuthorDate: Sat May 5 20:02:09 2018 +0200

    reafactor to separate Basic from Core and make new UI Sets not depend from Basic
---
 examples/blog/BE0001_Hello_World/pom.xml           |  15 +
 .../main/royale/products/ProductItemRenderer.as    |   2 +-
 examples/royale/AccordionExample/pom.xml           |  14 +
 examples/royale/DataBindingExample/pom.xml         |  14 +
 .../DataBindingExampleWithFlexLayout/pom.xml       |  14 +
 examples/royale/DataBindingExample_as/pom.xml      |  21 +
 .../src/main/royale/DataBindingExample.as          |  14 +-
 examples/royale/DataGridExample/pom.xml            |  14 +
 .../main/royale/products/ProductItemRenderer.as    |   2 +-
 examples/royale/DebuggingExample/pom.xml           |  14 +
 examples/royale/DividedContainerExample/pom.xml    |  14 +
 .../src/main/royale/MyInitialView.mxml             |   2 +-
 .../main/royale/products/ProductItemRenderer.as    |   2 +-
 examples/royale/Flex2Royale/pom.xml                |  14 +
 examples/royale/HTMLElements/pom.xml               |  14 +
 examples/royale/HelloWorld/pom.xml                 |  14 +
 examples/royale/JSON2ASVO/pom.xml                  |  14 +
 .../src/main/royale/AlertPlayGround.mxml           |  19 +-
 .../royale/JewelExample/src/main/royale/App.mxml   |  12 +-
 .../src/main/royale/ButtonPlayGround.mxml          |   9 +-
 .../src/main/royale/CheckBoxPlayGround.mxml        |   8 +-
 .../src/main/royale/DropDownListPlayGround.mxml    |  13 +-
 .../src/main/royale/HeadingsAndText.mxml           |  11 +-
 .../src/main/royale/LabelPlayGround.mxml           |  15 +-
 .../src/main/royale/ListPlayGround.mxml            |  27 +-
 .../JewelExample/src/main/royale/MainContent.mxml  |  45 +-
 .../src/main/royale/RadioButtonPlayGround.mxml     |  17 +-
 .../src/main/royale/SliderPlayGround.mxml          |  15 +-
 .../src/main/royale/TextInputPlayGround.mxml       |  39 +-
 examples/royale/ListExample/pom.xml                |  14 +
 .../ListExample/src/main/royale/MyInitialView.mxml |   2 +-
 .../main/royale/simple/IRFactoryForArrayData.as    |   2 +-
 examples/royale/ModuleExample/pom.xml              |  21 +
 .../RemoteObjectAMFTest/src/main/royale/App.mxml   |  57 +-
 examples/royale/StyleExample/pom.xml               |  14 +
 examples/royale/TableExample/pom.xml               |  14 +
 .../mapper/DataTableMapperForArrayListData.as      |   2 +-
 examples/royale/TeamPage/pom.xml                   |  14 +
 .../TeamPage/src/main/royale/MyInitialView.mxml    |   2 +-
 examples/royale/TodoListSampleApp/pom.xml          |  14 +
 .../royale/sample/todo/views/TodoListView.mxml     |   4 +-
 examples/royale/TreeExample/pom.xml                |  14 +
 .../Basic/src/main/resources/basic-manifest.xml    |  14 +-
 .../projects/Basic/src/main/resources/defaults.css |  94 +--
 .../projects/Basic/src/main/royale/BasicClasses.as |  11 +-
 .../apache/royale/core/IScrollingLayoutParent.as   |   2 +-
 .../main/royale/org/apache/royale/html/Alert.as    |   4 +-
 .../main/royale/org/apache/royale/html/CheckBox.as |  12 +-
 .../royale/org/apache/royale/html/ControlBar.as    |   4 +-
 .../royale/org/apache/royale/html/DataContainer.as |   4 +-
 .../royale/org/apache/royale/html/DropDownList.as  |   2 +-
 .../main/royale/org/apache/royale/html/Panel.as    |   4 +-
 .../royale/org/apache/royale/html/SimpleAlert.as   |   4 +-
 .../html/accessories/NumericOnlyTextInputBead.as   |   2 +-
 .../royale/html/accessories/PasswordInputBead.as   |   2 +-
 .../royale/html/beads/AccordionCollapseBead.as     |   1 +
 .../org/apache/royale/html/beads/AlertView.as      |   5 +-
 .../royale/html/beads/BackgroundImageBead.as       |   2 +
 .../org/apache/royale/html/beads/ButtonBarView.as  |   2 +-
 .../royale/html/beads/ControlBarMeasurementBead.as |   2 +-
 .../org/apache/royale/html/beads/DataGridView.as   |   5 +-
 .../beads/DataItemRendererFactoryForArrayData.as   |   4 +-
 .../beads/DataItemRendererFactoryForArrayList.as   |   2 +-
 .../DataItemRendererFactoryForCollectionView.as    |   3 +-
 .../beads/DataItemRendererFactoryForColumnData.as  |   2 +-
 .../apache/royale/html/beads/DateChooserView.as    |   4 +-
 .../royale/html/beads/DispatchInputFinishedBead.as |   2 +-
 .../royale/html/beads/DispatchKeyboardEventBead.as |   2 +-
 .../apache/royale/html/beads/DropDownListView.as   |   1 +
 .../DynamicItemsRendererFactoryForArrayListData.as |   2 +-
 .../org/apache/royale/html/beads/IDataGridView.as  |   2 +-
 .../org/apache/royale/html/beads/ListView.as       |   6 +-
 .../royale/html/beads/MultilineTextFieldView.as    |   1 +
 .../apache/royale/html/beads/NumericStepperView.as |   2 +-
 .../org/apache/royale/html/beads/PanelView.as      |   3 +-
 .../royale/html/beads/PanelWithControlBarView.as   |   2 +-
 .../apache/royale/html/beads/SimpleAlertView.as    |   2 +
 .../royale/html/beads/SingleLineBorderBead.as      |   1 +
 .../royale/html/beads/SolidBackgroundBead.as       |   3 +
 .../org/apache/royale/html/beads/TableCellView.as  |   2 +-
 .../org/apache/royale/html/beads/TextAreaView.as   |   5 +-
 .../org/apache/royale/html/beads/TextFieldView.as  |   1 +
 .../org/apache/royale/html/beads/TextInputView.as  |   1 +
 .../royale/html/beads/TextInputWithBorderView.as   |   2 +-
 .../org/apache/royale/html/beads/TitleBarView.mxml |   2 +-
 .../org/apache/royale/html/beads/TreeGridView.as   |   5 +-
 .../royale/html/beads/VirtualDataContainerView.as  |   6 +-
 .../VirtualDataItemRendererFactoryForArrayData.as  |   2 +-
 .../apache/royale/html/beads/VirtualListView.as    |   5 +-
 .../beads/controllers/DropDownListController.as    |   2 +-
 .../controllers/EditableTextKeyboardController.as  |   2 +-
 .../ListSingleSelectionMouseController.as          |   4 +-
 .../royale/html/beads/layouts/ButtonBarLayout.as   |   2 +-
 .../layouts/FlexibleFirstChildHorizontalLayout.as  |   2 +-
 .../royale/html/beads/models/ButtonBarModel.as     |   1 +
 .../royale/html/beads/models/ComboBoxModel.as      |   3 +-
 .../beads/models/DataGridCollectionViewModel.as    |   1 +
 .../royale/html/beads/models/DataGridModel.as      |   3 +-
 .../royale/html/beads/models/MenuBarModel.as       |   1 +
 .../apache/royale/html/beads/models/MenuModel.as   |   1 +
 .../apache/royale/html/beads/models/TreeModel.as   |   1 +
 ...AlternatingBackgroundColorStringItemRenderer.as |   1 -
 .../supportClasses/ButtonBarButtonItemRenderer.as  |   1 +
 .../supportClasses/CascadingMenuItemRenderer.as    |   1 +
 .../royale/html/supportClasses/DateChooserList.as  |   2 +-
 .../html/supportClasses/MenuBarItemRenderer.as     |   1 +
 .../royale/html/supportClasses/MenuItemRenderer.as |   1 +
 .../html/supportClasses/ScrollingViewport.as       |   1 +
 .../html/supportClasses/StringItemRenderer.as      |   3 +-
 .../supportClasses/TreeGridControlItemRenderer.as  |   1 +
 .../Charts/src/main/resources/defaults.css         |  16 +-
 .../charts/beads/ChartItemRendererFactory.as       |   2 +-
 ...ataItemRendererFactoryForSeriesArrayListData.as |   2 +-
 .../beads/DataItemRendererFactoryForSeriesData.as  |   2 +-
 .../org/apache/royale/charts/beads/DataTipBead.as  |   2 +-
 .../charts/beads/HorizontalCategoryAxisBead.as     |   2 +-
 .../charts/beads/HorizontalLinearAxisBead.as       |   2 +-
 .../charts/beads/VerticalCategoryAxisBead.as       |   2 +-
 .../royale/charts/beads/VerticalLinearAxisBead.as  |   2 +-
 .../controllers/ChartSeriesMouseController.as      |   2 +-
 .../beads/models/ChartArraySelectionModel.as       |   2 +-
 .../royale/charts/optimized/SVGBoxItemRenderer.as  |   2 +-
 .../royale/charts/optimized/SVGChartDataGroup.as   |   2 +-
 .../charts/optimized/SVGLineSegmentItemRenderer.as |   2 +-
 .../charts/optimized/SVGWedgeItemRenderer.as       |   2 +-
 .../charts/supportClasses/BoxItemRenderer.as       |   2 +-
 .../royale/charts/supportClasses/ChartDataGroup.as |   4 +-
 .../supportClasses/LineSegmentItemRenderer.as      |   2 +-
 .../charts/supportClasses/WedgeItemRenderer.as     |   2 +-
 .../Core/src/main/resources/basic-manifest.xml     |  13 +
 .../projects/Core/src/main/royale/CoreClasses.as   |  44 +-
 .../org/apache/royale/core/ApplicationBase.as      |   0
 .../royale/org/apache/royale/core/Container.as}    |  59 +-
 .../royale/org/apache/royale/core/ContainerBase.as |   0
 .../royale/core/ContainerBaseStrandChildren.as     |   0
 .../org/apache/royale/core/DataContainerBase.as    |   4 +-
 .../org/apache/royale/core}/DataItemRenderer.as    |   4 +-
 .../royale/org/apache/royale/core/GroupBase.as     |   0
 .../main/royale/org/apache/royale/core/IList.as    |   0
 .../royale/org/apache/royale/core}/IListView.as    |   2 +-
 .../royale/org/apache/royale/core/LayoutBase.as    |   2 -
 .../royale/org/apache/royale/core}/MXMLBeadView.as |   5 +-
 .../org/apache/royale/core}/MXMLItemRenderer.as    |   2 +-
 .../royale/org/apache/royale/core/UIButtonBase.as  |   0
 .../org/apache/royale/core}/UIItemRendererBase.as  |   2 +-
 .../src/main/royale/org/apache/royale/core/View.as |   0
 .../main/royale/org/apache/royale/core/ViewBase.as |   0
 .../org/apache/royale/core}/beads/GroupView.as     |   2 +-
 .../apache/royale/core}/beads/IBackgroundBead.as   |   2 +-
 .../org/apache/royale/core}/beads/IBorderBead.as   |   6 +-
 .../apache/royale/core}/beads/IDropDownListView.as |   2 +-
 .../apache/royale/core}/beads/ITextFieldView.as    |   8 +-
 .../apache/royale/core}/beads/TextFieldViewBase.as |   3 +-
 .../controllers/ItemRendererMouseController.as     |   2 +-
 .../core}/beads/layouts/LayoutChangeNotifier.as    |   2 +-
 .../core}/beads/models/ArraySelectionModel.as      |   2 +-
 .../royale/core}/beads/models/ViewportModel.as     |   4 +-
 .../royale/core/beads/views}/ContainerView.as      |  22 +-
 .../royale/core/beads/views}/DataContainerView.as  |  17 +-
 .../apache/royale/core}/supportClasses/Border.as   |   2 +-
 .../core}/supportClasses/ContainerContentArea.as   |   2 +-
 .../royale/core}/supportClasses/DataGroup.as       |   9 +-
 .../apache/royale/core}/supportClasses/Viewport.as |   5 +-
 .../org/apache/royale/events/ItemAddedEvent.as     |   2 -
 .../org/apache/royale/events/ItemClickedEvent.as   |   0
 .../org/apache/royale/events/ItemRemovedEvent.as   |   1 -
 .../org/apache/royale/events/ItemRendererEvent.as  |   2 +-
 .../effects/beads/EasyAccordionCollapseBead.as     |   2 +-
 .../Express/src/main/resources/defaults.css        |  10 +-
 .../main/royale/org/apache/royale/express/List.as  |   2 +-
 .../org/apache/royale/express/MXMLItemRenderer.as  |   4 +-
 .../projects/Flat/src/main/resources/defaults.css  |  34 +-
 .../royale/org/apache/royale/flat/DropDownList.as  |   2 +-
 .../apache/royale/flat/beads/DropDownListView.as   |   2 +-
 frameworks/projects/HTML/pom.xml                   |  15 +-
 .../org/apache/royale/html/NodeElementBase.as      |   2 +-
 .../projects/Jewel/src/main/resources/defaults.css |  57 +-
 .../Jewel/src/main/resources/jewel-as-manifest.xml |   3 +-
 .../Jewel/src/main/resources/jewel-manifest.xml    |   9 +
 .../projects/Jewel/src/main/royale/JewelClasses.as |  10 +
 .../main/royale/org/apache/royale/jewel/Alert.as   |   2 +-
 .../royale/org/apache/royale/jewel/Application.as  | 741 ++++++++++++++++++++-
 .../main/royale/org/apache/royale/jewel/Button.as  | 355 ++++++++--
 .../royale/org/apache/royale/jewel/CheckBox.as     | 139 +++-
 .../royale/org/apache/royale/jewel/ControlBar.as   |   2 +-
 .../royale/org/apache/royale/jewel/DropDownList.as |   2 +-
 .../main/royale/org/apache/royale/jewel/Group.as}  |  55 +-
 .../main/royale/org/apache/royale/jewel/List.as    |  69 +-
 .../org/apache/royale/jewel/MultilineLabel.as}     |  56 +-
 .../royale/org/apache/royale/jewel/TitleBar.as     |  98 ++-
 .../DataItemRendererFactoryForCollectionView.as    |   7 +-
 .../jewel/beads/controllers/AlertController.as     |   8 +-
 .../beads/controllers/DropDownListController.as    |   4 +-
 .../ListSingleSelectionMouseController.as          |   6 +-
 .../beads/controllers/SliderMouseController.as     |   2 +-
 .../jewel/beads/controls/slider/ISliderView.as}    |  33 +-
 .../beads/controls/textinput/TextPromptBead.as     | 152 +++++
 .../apache/royale/jewel/beads/models/AlertModel.as | 288 ++++++++
 .../jewel/beads/models/ListPresentationModel.as}   |  85 ++-
 .../apache/royale/jewel/beads/models/RangeModel.as | 238 +++++++
 .../royale/jewel/beads/models/ScrollBarModel.as}   |  66 +-
 .../models/SingleSelectionCollectionViewModel.as}  | 112 ++--
 .../apache/royale/jewel/beads/models/TextModel.as} | 105 +--
 .../royale/jewel/beads/models/TitleBarModel.as     | 136 ++++
 .../apache/royale/jewel/beads/views/AlertView.as   |  11 +-
 .../royale/jewel/beads/views/DropDownListView.as   |   2 +-
 .../jewel/beads/views/JewelLabelViewBead.mxml      |   2 +-
 .../apache/royale/jewel/beads/views/ListView.as    |   2 +-
 .../apache/royale/jewel/beads/views/SliderView.as  |   2 +-
 .../royale/jewel/beads/views/TextFieldView.as      |   2 +-
 .../royale/jewel/itemRenderers/ListItemRenderer.as |   6 +-
 .../royale/jewel/supportClasses/CheckBoxIcon.as    |  86 +++
 .../jewel/supportClasses/DropDownListList.as}      |  38 +-
 .../royale/jewel/supportClasses/HScrollBar.as}     |  27 +-
 .../royale/jewel/supportClasses/ScrollBar.as}      |  28 +-
 .../jewel}/supportClasses/ScrollingViewport.as     |  10 +-
 .../royale/jewel/supportClasses/TextInputBase.as   | 118 +++-
 .../royale/jewel/supportClasses/VScrollBar.as}     |  27 +-
 .../Jewel/src/main/sass/components/_alert.sass     |   6 +-
 .../Jewel/src/main/sass/components/_checkbox.sass  |   2 +-
 .../src/main/sass/components/_controlbar.sass      |   6 +-
 .../src/main/sass/components/_dropdownlist.sass    |  23 +-
 .../src/main/sass/components/_itemRenderer.sass    |   2 +-
 .../Jewel/src/main/sass/components/_label.sass     |   2 +-
 .../Jewel/src/main/sass/components/_list.sass      |  22 +-
 .../src/main/sass/components/_radiobutton.sass     |   2 +-
 .../Jewel/src/main/sass/components/_textinput.sass |   2 +-
 .../Jewel/src/main/sass/components/_titlebar.sass  |   6 +-
 .../src/main/royale/mx/core/UIComponent.as         |   2 +-
 .../MXRoyale/src/main/royale/mx/skins/Border.as    |   4 +-
 .../src/main/resources/defaults.css                |  10 +-
 .../TabsDataItemRendererFactoryForArrayListData.as |   4 +-
 .../beads/TabsItemRendererFactoryForArrayData.as   |   2 +-
 .../royale/mdl/beads/models/DropDownListModel.as   |   2 +-
 .../royale/mdl/beads/models/TabArrayModel.as       |   2 +-
 .../royale/mdl/beads/views/DropDownListView.as     |   2 +-
 .../mdl/itemRenderers/DropDownListItemRenderer.as  |   2 +-
 .../itemRenderers/FooterLinkItemMouseRenderer.as   |   2 +-
 .../mdl/itemRenderers/FooterLinkItemRenderer.as    |   2 +-
 .../royale/mdl/itemRenderers/ListItemRenderer.as   |   2 +-
 .../royale/mdl/itemRenderers/MenuItemRenderer.as   |   2 +-
 .../NavigationLinkItemMouseRenderer.as             |   2 +-
 .../itemRenderers/NavigationLinkItemRenderer.as    |   2 +-
 .../mdl/itemRenderers/TableRowItemRenderer.as      |   2 +-
 .../TableRowItemSingleSelectionMouseRenderer.as    |   2 +-
 .../supportClasses/TabBarButtonItemRendererBase.as |   2 +-
 .../mdl/supportClasses/TabItemRendererBase.as      |   2 +-
 .../royale/mobile/beads/ViewManagerViewBase.as     |   2 +-
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../src/main/resources/defaults.css                |  12 -
 .../JewelTheme/src/main/resources/defaults.css     |  12 -
 .../src/main/resources/jeweltheme-as-manifest.xml  |   1 -
 .../src/main/sass/components-primary/_alert.sass   |  10 -
 275 files changed, 3600 insertions(+), 1284 deletions(-)

diff --git a/examples/blog/BE0001_Hello_World/pom.xml b/examples/blog/BE0001_Hello_World/pom.xml
index 69d3799..c3fc966 100644
--- a/examples/blog/BE0001_Hello_World/pom.xml
+++ b/examples/blog/BE0001_Hello_World/pom.xml
@@ -57,6 +57,21 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/express/DataGridExample/src/main/royale/products/ProductItemRenderer.as b/examples/express/DataGridExample/src/main/royale/products/ProductItemRenderer.as
index 89e6862..03751f4 100644
--- a/examples/express/DataGridExample/src/main/royale/products/ProductItemRenderer.as
+++ b/examples/express/DataGridExample/src/main/royale/products/ProductItemRenderer.as
@@ -19,7 +19,7 @@
 package products
 {
 	import org.apache.royale.html.Image;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 
 	public class ProductItemRenderer extends DataItemRenderer
 	{
diff --git a/examples/royale/AccordionExample/pom.xml b/examples/royale/AccordionExample/pom.xml
index 118d29c..da709a6 100644
--- a/examples/royale/AccordionExample/pom.xml
+++ b/examples/royale/AccordionExample/pom.xml
@@ -61,6 +61,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/DataBindingExample/pom.xml b/examples/royale/DataBindingExample/pom.xml
index 21be8e4..c6c8c04 100644
--- a/examples/royale/DataBindingExample/pom.xml
+++ b/examples/royale/DataBindingExample/pom.xml
@@ -70,6 +70,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/DataBindingExampleWithFlexLayout/pom.xml b/examples/royale/DataBindingExampleWithFlexLayout/pom.xml
index 3df31e3..d4c351d 100644
--- a/examples/royale/DataBindingExampleWithFlexLayout/pom.xml
+++ b/examples/royale/DataBindingExampleWithFlexLayout/pom.xml
@@ -70,6 +70,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/DataBindingExample_as/pom.xml b/examples/royale/DataBindingExample_as/pom.xml
index 6f92fa1..6e2a0dc 100644
--- a/examples/royale/DataBindingExample_as/pom.xml
+++ b/examples/royale/DataBindingExample_as/pom.xml
@@ -79,6 +79,27 @@
       <type>swc</type>
       <classifier>js</classifier>
     </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>BasicTheme</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <scope>theme</scope>
+    </dependency>
   </dependencies>
 
 </project>
diff --git a/examples/royale/DataBindingExample_as/src/main/royale/DataBindingExample.as b/examples/royale/DataBindingExample_as/src/main/royale/DataBindingExample.as
index 76940fe..6c6a707 100644
--- a/examples/royale/DataBindingExample_as/src/main/royale/DataBindingExample.as
+++ b/examples/royale/DataBindingExample_as/src/main/royale/DataBindingExample.as
@@ -24,23 +24,23 @@ import org.apache.royale.core.ItemRendererClassFactory;
 import org.apache.royale.core.SimpleCSSValuesImpl;
 import org.apache.royale.events.Event;
 import org.apache.royale.html.beads.ContainerView;
-import org.apache.royale.html.beads.GroupView;
+import org.apache.royale.core.beads.GroupView;
 import org.apache.royale.html.beads.DataItemRendererFactoryForArrayData;
 import org.apache.royale.html.beads.ListView;
 import org.apache.royale.html.beads.TextItemRendererFactoryForArrayData;
-import org.apache.royale.html.beads.controllers.ItemRendererMouseController;
+import org.apache.royale.core.beads.controllers.ItemRendererMouseController;
 import org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController;
 import org.apache.royale.html.beads.layouts.BasicLayout;
 import org.apache.royale.html.beads.layouts.VerticalLayout;
-import org.apache.royale.html.beads.models.ArraySelectionModel;
+import org.apache.royale.core.beads.models.ArraySelectionModel;
 import org.apache.royale.html.beads.models.TextModel;
 import org.apache.royale.html.beads.models.ToggleButtonModel;
-import org.apache.royale.html.beads.models.ViewportModel;
-import org.apache.royale.html.supportClasses.ContainerContentArea;
+import org.apache.royale.core.beads.models.ViewportModel;
+import org.apache.royale.core.supportClasses.ContainerContentArea;
 import org.apache.royale.html.supportClasses.DropDownListList;
-import org.apache.royale.html.supportClasses.DataGroup;
+import org.apache.royale.core.supportClasses.DataGroup;
 import org.apache.royale.html.supportClasses.ScrollingViewport;
-import org.apache.royale.html.supportClasses.Viewport;
+import org.apache.royale.core.supportClasses.Viewport;
 import org.apache.royale.html.supportClasses.StringItemRenderer;
 import org.apache.royale.net.HTTPService;
 import org.apache.royale.collections.parsers.JSONInputParser;
diff --git a/examples/royale/DataGridExample/pom.xml b/examples/royale/DataGridExample/pom.xml
index bdcfd41..2f0d2de 100644
--- a/examples/royale/DataGridExample/pom.xml
+++ b/examples/royale/DataGridExample/pom.xml
@@ -59,6 +59,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/DataGridExample/src/main/royale/products/ProductItemRenderer.as b/examples/royale/DataGridExample/src/main/royale/products/ProductItemRenderer.as
index 89e6862..03751f4 100644
--- a/examples/royale/DataGridExample/src/main/royale/products/ProductItemRenderer.as
+++ b/examples/royale/DataGridExample/src/main/royale/products/ProductItemRenderer.as
@@ -19,7 +19,7 @@
 package products
 {
 	import org.apache.royale.html.Image;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 
 	public class ProductItemRenderer extends DataItemRenderer
 	{
diff --git a/examples/royale/DebuggingExample/pom.xml b/examples/royale/DebuggingExample/pom.xml
index 224a445..7357fe6 100644
--- a/examples/royale/DebuggingExample/pom.xml
+++ b/examples/royale/DebuggingExample/pom.xml
@@ -70,6 +70,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/DividedContainerExample/pom.xml b/examples/royale/DividedContainerExample/pom.xml
index dbfdeac..87e6e9e 100644
--- a/examples/royale/DividedContainerExample/pom.xml
+++ b/examples/royale/DividedContainerExample/pom.xml
@@ -59,6 +59,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/DragAndDropExample/src/main/royale/MyInitialView.mxml b/examples/royale/DragAndDropExample/src/main/royale/MyInitialView.mxml
index 48224d8..5a48211 100644
--- a/examples/royale/DragAndDropExample/src/main/royale/MyInitialView.mxml
+++ b/examples/royale/DragAndDropExample/src/main/royale/MyInitialView.mxml
@@ -50,7 +50,7 @@ limitations under the License.
 		.DragDropList
 		{
 			IBeadView: ClassReference("org.apache.royale.html.beads.DragDropListView");
-			IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+			IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
 			border: solid 1px black;
 		}
 		
diff --git a/examples/royale/DragAndDropExample/src/main/royale/products/ProductItemRenderer.as b/examples/royale/DragAndDropExample/src/main/royale/products/ProductItemRenderer.as
index 89e6862..03751f4 100644
--- a/examples/royale/DragAndDropExample/src/main/royale/products/ProductItemRenderer.as
+++ b/examples/royale/DragAndDropExample/src/main/royale/products/ProductItemRenderer.as
@@ -19,7 +19,7 @@
 package products
 {
 	import org.apache.royale.html.Image;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 
 	public class ProductItemRenderer extends DataItemRenderer
 	{
diff --git a/examples/royale/Flex2Royale/pom.xml b/examples/royale/Flex2Royale/pom.xml
index 2e38f5b..c5a29a1 100644
--- a/examples/royale/Flex2Royale/pom.xml
+++ b/examples/royale/Flex2Royale/pom.xml
@@ -70,6 +70,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/HTMLElements/pom.xml b/examples/royale/HTMLElements/pom.xml
index d550ba9..0bb7822 100644
--- a/examples/royale/HTMLElements/pom.xml
+++ b/examples/royale/HTMLElements/pom.xml
@@ -55,6 +55,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/HelloWorld/pom.xml b/examples/royale/HelloWorld/pom.xml
index 91f35a5..8eed512 100644
--- a/examples/royale/HelloWorld/pom.xml
+++ b/examples/royale/HelloWorld/pom.xml
@@ -55,6 +55,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/JSON2ASVO/pom.xml b/examples/royale/JSON2ASVO/pom.xml
index 2acfe41..fea108e 100644
--- a/examples/royale/JSON2ASVO/pom.xml
+++ b/examples/royale/JSON2ASVO/pom.xml
@@ -100,6 +100,20 @@
     </dependency>
      -->
     <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
         <groupId>org.apache.royale.framework</groupId>
         <artifactId>BasicTheme</artifactId>
         <version>0.9.3-SNAPSHOT</version>
diff --git a/examples/royale/JewelExample/src/main/royale/AlertPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/AlertPlayGround.mxml
index 81f24e3..c53a75a 100644
--- a/examples/royale/JewelExample/src/main/royale/AlertPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/AlertPlayGround.mxml
@@ -17,11 +17,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
-		  xmlns:html="library://ns.apache.org/royale/html"
-		  xmlns:j="library://ns.apache.org/royale/jewel"
-		  className="container" width="350">
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 xmlns:html="library://ns.apache.org/royale/html"
+		 xmlns:j="library://ns.apache.org/royale/jewel"
+		 className="container" width="350">
     
 	<fx:Script>
 		<![CDATA[
@@ -47,17 +46,17 @@ limitations under the License.
 		]]>
 	</fx:Script>
 
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
+	</j:beads> -->
 	
 	<html:H3 text="Jewel Alert"/>
 	
-    <js:MultilineLabel text="Click the button below to display a simple Alert window"/>
+    <j:MultilineLabel text="Click the button below to display a simple Alert window"/>
 	<j:Button text="Click Me" click="Alert.show('This is an Alert component example that shows a label text and the default OK button.', 'Alert Example')"/>
 
-    <js:MultilineLabel text="Click the button below to display an Alert window and capture the button pressed by the user."/>
+    <j:MultilineLabel text="Click the button below to display an Alert window and capture the button pressed by the user."/>
 	<j:Button text="Click Me" click="clickHandler(event)"/>
     <j:Label id="status"/>
 	
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/App.mxml b/examples/royale/JewelExample/src/main/royale/App.mxml
index 72aea7c..f223fa1 100644
--- a/examples/royale/JewelExample/src/main/royale/App.mxml
+++ b/examples/royale/JewelExample/src/main/royale/App.mxml
@@ -26,16 +26,16 @@
 
 	<fx:Style source="../../main/resources/jewel-example-styles.css"/>
 	
-	<js:valuesImpl>
+	<j:valuesImpl>
 		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	<js:initialView>
+	</j:valuesImpl>
+	<j:initialView>
 		<js:View>
-			<js:beads>
+			<!-- <j:beads>
 				<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-			</js:beads>
+			</j:beads> -->
 			<html:H1 text="Apache Royale Jewel UI Set Theme Showcase"/>
 			<local:MainContent/>
         </js:View>
-	</js:initialView>
+	</j:initialView>
 </j:Application>
diff --git a/examples/royale/JewelExample/src/main/royale/ButtonPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/ButtonPlayGround.mxml
index 2b536cc..222eef6 100644
--- a/examples/royale/JewelExample/src/main/royale/ButtonPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/ButtonPlayGround.mxml
@@ -17,8 +17,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
 		  xmlns:html="library://ns.apache.org/royale/html"
 		  xmlns:j="library://ns.apache.org/royale/jewel"
 		  className="container">
@@ -31,9 +30,9 @@ limitations under the License.
 		]]>
 	</fx:Script>
 
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
+	</j:beads> -->
 	
 	<html:H3 text="Jewel Button"/>
 	
@@ -47,4 +46,4 @@ limitations under the License.
 			<j:Disabled/>
 		</j:beads>
 	</j:Button>
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/CheckBoxPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/CheckBoxPlayGround.mxml
index 5190f82..cf35fce 100644
--- a/examples/royale/JewelExample/src/main/royale/CheckBoxPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/CheckBoxPlayGround.mxml
@@ -17,15 +17,15 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
 		  xmlns:js="library://ns.apache.org/royale/basic"
 		  xmlns:html="library://ns.apache.org/royale/html"
 		  xmlns:j="library://ns.apache.org/royale/jewel"
           className="container">
     
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
+	</j:beads> -->
 	
 	<html:H3 text="Jewel CheckBox"/>
 
@@ -45,4 +45,4 @@ limitations under the License.
 		</j:beads>
 	</j:CheckBox>
 
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/DropDownListPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/DropDownListPlayGround.mxml
index 4fd6856..8ff300d 100644
--- a/examples/royale/JewelExample/src/main/royale/DropDownListPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/DropDownListPlayGround.mxml
@@ -17,7 +17,7 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
 		  xmlns:js="library://ns.apache.org/royale/basic"
 		  xmlns:html="library://ns.apache.org/royale/html"
 		  xmlns:j="library://ns.apache.org/royale/jewel"
@@ -40,20 +40,19 @@ limitations under the License.
 		]]>
 	</fx:Script>
 
-	<js:beads>
-		<j:HorizontalLayoutWithPaddingAndGap gap="10"/>
+	<j:beads>
+		<!-- <j:HorizontalLayoutWithPaddingAndGap gap="10"/> -->
 		<js:ViewDataBinding />
-	</js:beads>
+	</j:beads>
 	
 	<html:H3 text="Jewel DropDownList"/>
 	
 	<j:DropDownList dataProvider="{strings}"/>
-		
 
 	<!-- <j:DropDownList change="changeHandler(event)">
 		<j:dataProvider>
-			<js:ArrayList id="avengersCharacters" source="[Iron Man, Hulk, Thor, Captain America, Black Widow]" />
+			<j:ArrayList id="avengersCharacters" source="[Iron Man, Hulk, Thor, Captain America, Black Widow]" />
 		</j:dataProvider>
 	</j:DropDownList> -->
 	
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/HeadingsAndText.mxml b/examples/royale/JewelExample/src/main/royale/HeadingsAndText.mxml
index df264c9..33aa449 100644
--- a/examples/royale/JewelExample/src/main/royale/HeadingsAndText.mxml
+++ b/examples/royale/JewelExample/src/main/royale/HeadingsAndText.mxml
@@ -17,15 +17,14 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
 		  xmlns:html="library://ns.apache.org/royale/html"
 		  xmlns:j="library://ns.apache.org/royale/jewel"
           className="container" width="350">
     
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
+	</j:beads> -->
 	
     <html:H3 text="Headings and text"/>
 
@@ -36,6 +35,6 @@ limitations under the License.
 
 	<html:Span text="Some span text."/>
 	
-    <js:MultilineLabel text="Normal text used in a div, texts and fields with single line or multiple lines."/>
+    <j:MultilineLabel text="Normal text used in a div, texts and fields with single line or multiple lines."/>
 
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/LabelPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/LabelPlayGround.mxml
index 9d68b01..3413555 100644
--- a/examples/royale/JewelExample/src/main/royale/LabelPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/LabelPlayGround.mxml
@@ -17,11 +17,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
-		  xmlns:html="library://ns.apache.org/royale/html"
-		  xmlns:j="library://ns.apache.org/royale/jewel"
-		  className="container">
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 xmlns:html="library://ns.apache.org/royale/html"
+		 xmlns:j="library://ns.apache.org/royale/jewel"
+		 className="container">
     
 	<fx:Script>
 		<![CDATA[
@@ -34,12 +33,12 @@ limitations under the License.
     	]]>
 	</fx:Script>
 
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
+	</j:beads> -->
 	
 	<html:H3 text="Jewel Label"/>
 	
 	<j:Label id="label" text="This is a Label" click="labelClick(event)"/>
 	
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml
index 1fbd517..f3e6a0a 100644
--- a/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/ListPlayGround.mxml
@@ -17,12 +17,12 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
-		  xmlns:html="library://ns.apache.org/royale/html"
-		  xmlns:j="library://ns.apache.org/royale/jewel"
-          xmlns:models="models.*"
-		  className="container" width="350">
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 xmlns:js="library://ns.apache.org/royale/basic"
+		 xmlns:html="library://ns.apache.org/royale/html"
+		 xmlns:j="library://ns.apache.org/royale/jewel"
+         xmlns:models="models.*"
+		 className="container" width="350">
     
     <fx:Script>
 		<![CDATA[
@@ -36,25 +36,24 @@ limitations under the License.
 		]]>
 	</fx:Script>
 
-    <js:model>
+    <j:model>
         <models:ListsModel/>
-	</js:model>
+	</j:model>
 
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
+	</j:beads> -->
 	
 	<html:H3 text="Jewel List"/>
 	
     <j:List id="list" width="200" height="300" change="onChange(event)">
-		<js:beads>
+		<j:beads>
 			<js:ConstantBinding
-				
 				sourcePropertyName="simple"
 				destinationPropertyName="dataProvider" />
-		</js:beads>
+		</j:beads>
     </j:List>
 
     <j:Label id="selected"/>
 	
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/MainContent.mxml b/examples/royale/JewelExample/src/main/royale/MainContent.mxml
index 0cd2271..9e6e9b9 100644
--- a/examples/royale/JewelExample/src/main/royale/MainContent.mxml
+++ b/examples/royale/JewelExample/src/main/royale/MainContent.mxml
@@ -17,47 +17,46 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
-		  xmlns:j="library://ns.apache.org/royale/jewel"
-          xmlns:local="*">
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+         xmlns:j="library://ns.apache.org/royale/jewel"
+         xmlns:local="*">
     
-    <js:beads>
+    <j:beads>
         <j:HorizontalLayoutWithPaddingAndGap gap="10"/>
-    </js:beads>
+    </j:beads>
 
-    <js:Group>
-        <js:beads>
+    <j:Group>
+        <!-- <j:beads>
             <j:VerticalLayoutWithPaddingAndGap gap="10"/>
-        </js:beads>
+        </j:beads> -->
         <local:LabelPlayGround/>
         <local:ButtonPlayGround/>
         <local:DropDownListPlayGround/>
-    </js:Group>
+    </j:Group>
 
-    <js:Group>
-        <js:beads>
+     <j:Group>
+        <!-- <j:beads>
             <j:VerticalLayoutWithPaddingAndGap gap="10"/>
-        </js:beads>
+        </j:beads> -->
         <local:TextInputPlayGround/>
         <local:CheckBoxPlayGround/>
         <local:RadioButtonPlayGround/>
-    </js:Group>
+    </j:Group>
 
-    <js:Group>
-        <js:beads>
+    <j:Group>
+        <!-- <j:beads>
             <j:VerticalLayoutWithPaddingAndGap gap="10"/>
-        </js:beads>
+        </j:beads> -->
         <local:SliderPlayGround/>
         <local:ListPlayGround/>
-    </js:Group>
+    </j:Group>
     
-    <js:Group>
-        <js:beads>
+    <j:Group>
+        <!-- <j:beads>
             <j:VerticalLayoutWithPaddingAndGap gap="10"/>
-        </js:beads>
+        </j:beads> -->
         <local:AlertPlayGround/>
         <local:HeadingsAndText/>
-    </js:Group>
+    </j:Group>
     
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/RadioButtonPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/RadioButtonPlayGround.mxml
index 9e6806d..021675f 100644
--- a/examples/royale/JewelExample/src/main/royale/RadioButtonPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/RadioButtonPlayGround.mxml
@@ -17,16 +17,15 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
-		  xmlns:html="library://ns.apache.org/royale/html"
-		  xmlns:j="library://ns.apache.org/royale/jewel"
-          className="container">
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 xmlns:html="library://ns.apache.org/royale/html"
+		 xmlns:j="library://ns.apache.org/royale/jewel"
+         className="container">
     
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
-	
+	</j:beads>
+	 -->
 	<html:H3 text="Jewel RadioButton"/>
 
 	<j:RadioButton text="RadioButton 1" groupName="radios" value="Test 1"/>
@@ -45,4 +44,4 @@ limitations under the License.
 		</j:beads>
 	</j:RadioButton>
 
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/SliderPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/SliderPlayGround.mxml
index b355b64..c15c752 100644
--- a/examples/royale/JewelExample/src/main/royale/SliderPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/SliderPlayGround.mxml
@@ -17,11 +17,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
-		  xmlns:html="library://ns.apache.org/royale/html"
-		  xmlns:j="library://ns.apache.org/royale/jewel"
-          className="container">
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 xmlns:html="library://ns.apache.org/royale/html"
+		 xmlns:j="library://ns.apache.org/royale/jewel"
+         className="container">
     
 	<fx:Script>
 		<![CDATA[
@@ -53,9 +52,9 @@ limitations under the License.
     	]]>
 	</fx:Script>
 
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
+	</j:beads> -->
 	
 	<html:H3 text="Jewel Slider"/>
 	
@@ -77,4 +76,4 @@ limitations under the License.
 	<j:Button id="button" text="Slider to 400x200" width="250" height="80" primary="true"
 					click="clickHandler(event)"/>
 
-</js:Group>
+</j:Group>
diff --git a/examples/royale/JewelExample/src/main/royale/TextInputPlayGround.mxml b/examples/royale/JewelExample/src/main/royale/TextInputPlayGround.mxml
index d81a3f7..bfdc7ef 100644
--- a/examples/royale/JewelExample/src/main/royale/TextInputPlayGround.mxml
+++ b/examples/royale/JewelExample/src/main/royale/TextInputPlayGround.mxml
@@ -17,52 +17,49 @@ See the License for the specific language governing permissions and
 limitations under the License.
 
 -->
-<js:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
-		  xmlns:js="library://ns.apache.org/royale/basic"
-		  xmlns:html="library://ns.apache.org/royale/html"
-		  xmlns:j="library://ns.apache.org/royale/jewel"
-		  className="container">
+<j:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 xmlns:html="library://ns.apache.org/royale/html"
+		 xmlns:j="library://ns.apache.org/royale/jewel"
+		 className="container">
     
-	<js:beads>
+	<!-- <j:beads>
 		<j:VerticalLayoutWithPaddingAndGap gap="10"/>
-	</js:beads>
+	</j:beads> -->
 	
 	<html:H3 text="Jewel TextInput"/>
 
-	<js:Group>
-		<js:beads>
+	<j:Group>
+		<!-- <j:beads>
 			<j:HorizontalLayoutWithPaddingAndGap gap="10"/>
-		</js:beads>
+		</j:beads> -->
 		<j:Button text="Check it!" primary="true"/>
 		<j:TextInput text="A TextInput"/>
-	</js:Group>
+	</j:Group>
 
-	<js:Group>
-		<js:beads>
+	<j:Group>
+		<!-- <j:beads>
 			<j:HorizontalLayoutWithPaddingAndGap gap="10"/>
-		</js:beads>
+		</j:beads> -->
 		<j:TextInput>
 			<j:beads>
-				<js:TextPromptBead prompt="With prompt..."/>
+				<j:TextPromptBead prompt="With prompt..."/>
 			</j:beads>
 		</j:TextInput>
 		<j:Button text="Send" primary="true"/>
-	</js:Group>
+	</j:Group>
 
 	<j:TextInput text="Disabled with text...">
 		<j:beads>
-			<js:TextPromptBead prompt="Disabled TextInput..."/>
+			<j:TextPromptBead prompt="Disabled TextInput..."/>
 			<j:Disabled/>
 		</j:beads>
 	</j:TextInput>
 
 	<j:TextInput>
 		<j:beads>
-			<js:TextPromptBead prompt="Disabled with prompt..."/>
+			<j:TextPromptBead prompt="Disabled with prompt..."/>
 			<j:Disabled/>
 		</j:beads>
 	</j:TextInput>
 
-	
-
-</js:Group>
+</j:Group>
diff --git a/examples/royale/ListExample/pom.xml b/examples/royale/ListExample/pom.xml
index 8b55d98..99c90f6 100644
--- a/examples/royale/ListExample/pom.xml
+++ b/examples/royale/ListExample/pom.xml
@@ -66,6 +66,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/ListExample/src/main/royale/MyInitialView.mxml b/examples/royale/ListExample/src/main/royale/MyInitialView.mxml
index 0d3507f..45c323b 100644
--- a/examples/royale/ListExample/src/main/royale/MyInitialView.mxml
+++ b/examples/royale/ListExample/src/main/royale/MyInitialView.mxml
@@ -37,7 +37,7 @@ limitations under the License.
 			IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");		
 			IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");	
 			IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-			IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");		
+			IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");		
 			
 			overflow: auto;
 			border: 1px solid #CCCCCC;
diff --git a/examples/royale/ListExample/src/main/royale/simple/IRFactoryForArrayData.as b/examples/royale/ListExample/src/main/royale/simple/IRFactoryForArrayData.as
index f5418eb..474f0d2 100644
--- a/examples/royale/ListExample/src/main/royale/simple/IRFactoryForArrayData.as
+++ b/examples/royale/ListExample/src/main/royale/simple/IRFactoryForArrayData.as
@@ -34,7 +34,7 @@ package simple
 	import org.apache.royale.events.EventDispatcher;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.events.ItemRendererEvent;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 
 	[Event(name="itemRendererCreated",type="org.apache.royale.events.ItemRendererEvent")]
 
diff --git a/examples/royale/ModuleExample/pom.xml b/examples/royale/ModuleExample/pom.xml
index e3ffb5e..75ec105 100644
--- a/examples/royale/ModuleExample/pom.xml
+++ b/examples/royale/ModuleExample/pom.xml
@@ -71,6 +71,27 @@
   -->
 
   <dependencies>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>BasicTheme</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <scope>theme</scope>
+    </dependency>
   </dependencies>
 
 </project>
diff --git a/examples/royale/RemoteObjectAMFTest/src/main/royale/App.mxml b/examples/royale/RemoteObjectAMFTest/src/main/royale/App.mxml
index 47f7d66..6fe491c 100644
--- a/examples/royale/RemoteObjectAMFTest/src/main/royale/App.mxml
+++ b/examples/royale/RemoteObjectAMFTest/src/main/royale/App.mxml
@@ -18,16 +18,16 @@ limitations under the License.
 
 -->
 <j:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                 xmlns:js="library://ns.apache.org/royale/basic"
-                 xmlns:j="library://ns.apache.org/royale/jewel"
-                 xmlns:html="library://ns.apache.org/royale/html"
-                 xmlns:local="*">
+               xmlns:js="library://ns.apache.org/royale/basic"
+               xmlns:j="library://ns.apache.org/royale/jewel"
+               xmlns:html="library://ns.apache.org/royale/html"
+               xmlns:local="*">
 
     <fx:Style source="../../main/resources/styles.css"/>
 
-    <js:valuesImpl>
+    <j:valuesImpl>
         <js:SimpleCSSValuesImpl />
-    </js:valuesImpl>
+    </j:valuesImpl>
 
     <fx:Script>
 		<![CDATA[
@@ -82,15 +82,15 @@ limitations under the License.
 		]]>
 	</fx:Script>
 
-    <js:beads>
+    <j:beads>
         <js:ClassAliasBead />
         <js:RemoteObject id="service" result="onResult(event)" fault="onFault(event)"
                          endPoint = "http://localhost:8080/messagebroker/websocket-amf"
                          destination = "exampleService"
                          source = "exampleService"/>
-    </js:beads>
+    </j:beads>
 
-    <js:initialView>
+    <j:initialView>
         <js:View>
             <js:beads>
                 <j:VerticalLayoutWithPaddingAndGap gap="10"/>
@@ -98,46 +98,45 @@ limitations under the License.
 
             <html:H3 text="RemoteObject AMF Test"/>
 
-            <js:Group className="container" width="400">
-                <js:beads>
+            <j:Group className="container" width="400">
+                <j:beads>
                     <j:VerticalLayoutWithPaddingAndGap gap="10"/>
-                </js:beads>
+                </j:beads>
 
-                <js:Group>
-                    <js:beads>
+                <j:Group>
+                    <j:beads>
                         <j:HorizontalLayoutWithPaddingAndGap gap="10"/>
-                    </js:beads>
+                    </j:beads>
                     <j:TextInput id="name_txt">
                         <j:beads>
-                            <js:TextPromptBead prompt="Name to send via AMF"/>
+                            <j:TextPromptBead prompt="Name to send via AMF"/>
                         </j:beads>
                     </j:TextInput>
                     <j:Button text="Send to Name" primary="true"  click="sendName()"/>
-                </js:Group>
+                </j:Group>
 
                 <j:Label id="received" text="Received:"/>
-            </js:Group>
+            </j:Group>
 
-            <js:Group className="container" width="400">
-                <js:beads>
+            <j:Group className="container" width="400">
+                <j:beads>
                     <j:VerticalLayoutWithPaddingAndGap gap="10"/>
-                </js:beads>
+                </j:beads>
                 <j:Button text="Get Array of ValueObjects" emphasized="true" click="getVOs()" width="100%"/>
                 <j:List id="list" labelField="id" width="100%" height="200" 
                             change="reportChange()"/>
                 <j:Label id="received2" text="Selected:"/>
-            </js:Group>
+            </j:Group>
             
-            <js:Group className="container" width="400">
-                <js:beads>
+            <j:Group className="container" width="400">
+                <j:beads>
                     <j:VerticalLayoutWithPaddingAndGap gap="10"/>
-                </js:beads>
+                </j:beads>
                 <j:Button text="Get Some Product" primary="true" click="getSomeProduct()"/>
-                <js:MultilineLabel id="received3" text="Received:"/>
-            </js:Group>
+                <j:MultilineLabel id="received3" text="Received:"/>
+            </j:Group>
 
         </js:View>
-    </js:initialView>
-
+    </j:initialView>
     
 </j:Application>
diff --git a/examples/royale/StyleExample/pom.xml b/examples/royale/StyleExample/pom.xml
index 3e88169..621699c 100644
--- a/examples/royale/StyleExample/pom.xml
+++ b/examples/royale/StyleExample/pom.xml
@@ -71,6 +71,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/TableExample/pom.xml b/examples/royale/TableExample/pom.xml
index 8724e47..c5eac3b 100644
--- a/examples/royale/TableExample/pom.xml
+++ b/examples/royale/TableExample/pom.xml
@@ -59,6 +59,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/TableExample/src/main/royale/dataTable/mapper/DataTableMapperForArrayListData.as b/examples/royale/TableExample/src/main/royale/dataTable/mapper/DataTableMapperForArrayListData.as
index 6cfb9dd..73dd719 100644
--- a/examples/royale/TableExample/src/main/royale/dataTable/mapper/DataTableMapperForArrayListData.as
+++ b/examples/royale/TableExample/src/main/royale/dataTable/mapper/DataTableMapperForArrayListData.as
@@ -32,7 +32,7 @@ package dataTable.mapper
 	import org.apache.royale.html.TableCell;
 	import org.apache.royale.html.TableHeader;
 	import org.apache.royale.html.TableRow;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	
 	public class DataTableMapperForArrayListData implements IBead
 	{
diff --git a/examples/royale/TeamPage/pom.xml b/examples/royale/TeamPage/pom.xml
index 651e44c..e28bf34 100644
--- a/examples/royale/TeamPage/pom.xml
+++ b/examples/royale/TeamPage/pom.xml
@@ -65,6 +65,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/TeamPage/src/main/royale/MyInitialView.mxml b/examples/royale/TeamPage/src/main/royale/MyInitialView.mxml
index e0e1aab..ec77528 100644
--- a/examples/royale/TeamPage/src/main/royale/MyInitialView.mxml
+++ b/examples/royale/TeamPage/src/main/royale/MyInitialView.mxml
@@ -28,7 +28,7 @@ limitations under the License.
 		@namespace js  "library://ns.apache.org/royale/basic";
 		
 		.Repeater {
-			IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
+			IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
 			border: none;
 			border-width: 0px;
 		}
diff --git a/examples/royale/TodoListSampleApp/pom.xml b/examples/royale/TodoListSampleApp/pom.xml
index d291370..89228a7 100644
--- a/examples/royale/TodoListSampleApp/pom.xml
+++ b/examples/royale/TodoListSampleApp/pom.xml
@@ -61,6 +61,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/examples/royale/TodoListSampleApp/src/main/royale/sample/todo/views/TodoListView.mxml b/examples/royale/TodoListSampleApp/src/main/royale/sample/todo/views/TodoListView.mxml
index 701b330..cd4731c 100644
--- a/examples/royale/TodoListSampleApp/src/main/royale/sample/todo/views/TodoListView.mxml
+++ b/examples/royale/TodoListSampleApp/src/main/royale/sample/todo/views/TodoListView.mxml
@@ -31,7 +31,7 @@ limitations under the License.
 			backgroundColor: #FFFF;
             height: 40px;
             padding: 4px;
-            IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+            IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
         }
         
         .RendererText {
@@ -55,7 +55,7 @@ limitations under the License.
 			import org.apache.royale.events.Event;
 			import org.apache.royale.events.IEventDispatcher;
 			import org.apache.royale.events.ItemRendererEvent;
-			import org.apache.royale.html.beads.controllers.ItemRendererMouseController;
+			import org.apache.royale.core.beads.controllers.ItemRendererMouseController;
 			
 			import sample.todo.events.TodoListEvent;
 			import sample.todo.models.TodoListModel;
diff --git a/examples/royale/TreeExample/pom.xml b/examples/royale/TreeExample/pom.xml
index c09e2a7..a2508fe 100644
--- a/examples/royale/TreeExample/pom.xml
+++ b/examples/royale/TreeExample/pom.xml
@@ -55,6 +55,20 @@
     </dependency>
     <dependency>
       <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>swf</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
+      <artifactId>Basic</artifactId>
+      <version>0.9.3-SNAPSHOT</version>
+      <type>swc</type>
+      <classifier>js</classifier>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.royale.framework</groupId>
       <artifactId>BasicTheme</artifactId>
       <version>0.9.3-SNAPSHOT</version>
       <type>swc</type>
diff --git a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
index 65ded61..95f9f31 100644
--- a/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Basic/src/main/resources/basic-manifest.xml
@@ -23,7 +23,6 @@
 
     <component id="Application" class="org.apache.royale.core.Application"/>
     <component id="AirApplication" class="org.apache.royale.core.AirApplication"/>
-    <component id="View" class="org.apache.royale.core.View"/>
     <component id="Button" class="org.apache.royale.html.Button"/>
     <component id="CloseButton" class="org.apache.royale.html.CloseButton"/>
     <component id="ButtonBar" class="org.apache.royale.html.ButtonBar"/>
@@ -50,7 +49,6 @@
     <component id="RadioButton" class="org.apache.royale.html.RadioButton"/>
     <component id="ComboBox" class="org.apache.royale.html.ComboBox"/>
     <component id="ComboBoxList" class="org.apache.royale.html.supportClasses.ComboBoxList"/>
-    <component id="Container" class="org.apache.royale.html.Container"/>
     <component id="Group" class="org.apache.royale.html.Group"/>
     <component id="HGroup" class="org.apache.royale.html.HGroup"/>
     <component id="VGroup" class="org.apache.royale.html.VGroup"/>
@@ -112,8 +110,6 @@
     <component id="DispatchInputFinishedBead" class="org.apache.royale.html.beads.DispatchInputFinishedBead"/>
     <component id="DispatchKeyboardEventBead" class="org.apache.royale.html.beads.DispatchKeyboardEventBead"/>
     <component id="TreeItemRenderer" class="org.apache.royale.html.supportClasses.TreeItemRenderer"/>
-    <component id="DataItemRenderer" class="org.apache.royale.html.supportClasses.DataItemRenderer"/>
-    <component id="MXMLItemRenderer" class="org.apache.royale.html.supportClasses.MXMLItemRenderer"/>
     <component id="DateItemRenderer" class="org.apache.royale.html.supportClasses.DateItemRenderer"/>
     <component id="DayNameItemRenderer" class="org.apache.royale.html.supportClasses.DayNameItemRenderer"/>
     <component id="TextButtonItemRenderer" class="org.apache.royale.html.supportClasses.TextButtonItemRenderer"/>
@@ -149,12 +145,10 @@
     <component id="ScrollingViewport" class="org.apache.royale.html.supportClasses.ScrollingViewport" />
     <component id="HScrollViewport" class="org.apache.royale.html.supportClasses.HScrollViewport" />
     <component id="VScrollViewport" class="org.apache.royale.html.supportClasses.VScrollViewport" />
-    <component id="ClippingViewport" class="org.apache.royale.html.supportClasses.Viewport" lookupOnly="true" />
-    <component id="Viewport" class="org.apache.royale.html.supportClasses.Viewport" />
+    <component id="ClippingViewport" class="org.apache.royale.core.supportClasses.Viewport" lookupOnly="true" />
     <component id="OverflowViewport" class="org.apache.royale.html.supportClasses.OverflowViewport" />
     <component id="InfiniteVScroller" class="org.apache.royale.html.beads.InfiniteVScroller" />
 
-    <component id="ArraySelectionModel" class="org.apache.royale.html.beads.models.ArraySelectionModel" />
     <component id="ArrayListSelectionModel" class="org.apache.royale.html.beads.models.ArrayListSelectionModel" />
 
     <component id="DataGrid" class="org.apache.royale.html.DataGrid"/>
@@ -191,8 +185,7 @@
     <component id="VerticalColumnLayout" class="org.apache.royale.html.beads.layouts.VerticalColumnLayout" />
 
     <component id="ToolTipBead" class="org.apache.royale.html.accessories.ToolTipBead" />
-
-    <component id="LayoutChangeNotifier" class="org.apache.royale.html.beads.layouts.LayoutChangeNotifier"/>
+    
     <component id="LayoutOnShow" class="org.apache.royale.html.beads.layouts.LayoutOnShow"/>
     <component id="ImageButton" class="org.apache.royale.html.ImageButton"/>
     <component id="FlexibleFirstChildHorizontalLayout" class="org.apache.royale.html.beads.layouts.FlexibleFirstChildHorizontalLayout"/>
@@ -200,12 +193,9 @@
     <component id="OneFlexibleChildHorizontalLayout" class="org.apache.royale.html.beads.layouts.OneFlexibleChildHorizontalLayout"/>
     <component id="OneFlexibleChildVerticalLayoutForOverflow" class="org.apache.royale.html.beads.layouts.OneFlexibleChildVerticalLayoutForOverflow"/>
     <component id="OneFlexibleChildHorizontalLayoutForOverflow" class="org.apache.royale.html.beads.layouts.OneFlexibleChildHorizontalLayoutForOverflow"/>
-    <component id="MXMLBeadView" class="org.apache.royale.html.MXMLBeadView"/>
 
     <component id="SubAppLoader" class="org.apache.royale.html.SubAppLoader" />
 
-    <component id="Border" class="org.apache.royale.html.supportClasses.Border"/>
-
     <component id="WebBrowser" class="org.apache.royale.html.WebBrowser" />
     
     <component id="Table" class="org.apache.royale.html.Table"/>
diff --git a/frameworks/projects/Basic/src/main/resources/defaults.css b/frameworks/projects/Basic/src/main/resources/defaults.css
index 901f1f0..cd2af12 100644
--- a/frameworks/projects/Basic/src/main/resources/defaults.css
+++ b/frameworks/projects/Basic/src/main/resources/defaults.css
@@ -78,7 +78,7 @@ ComboBox
 
 ComboBoxList
 {
-	IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+	IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
 	IBeadView:  ClassReference("org.apache.royale.html.beads.ListView");			
 	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
@@ -86,7 +86,7 @@ ComboBoxList
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	border-style: solid;
 	border-radius: 4px;
 	border-color: #000000;
@@ -101,16 +101,16 @@ ComboBoxList
 
 Container
 {
-	IBeadView: ClassReference("org.apache.royale.html.beads.ContainerView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.views.ContainerView");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.BasicLayout");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	align-items: flex-start;
 }
 
 ControlBar
 {
-	IBeadView: ClassReference("org.apache.royale.html.beads.GroupView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.GroupView");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.HorizontalFlexLayout");
 	
 	padding: 2px;
@@ -122,13 +122,13 @@ ControlBar
 DataContainer
 {
 	IBeadModel: ClassReference("org.apache.royale.html.beads.models.DataProviderModel");
-	IBeadView:  ClassReference("org.apache.royale.html.beads.DataContainerView");			
+	IBeadView:  ClassReference("org.apache.royale.core.beads.views.DataContainerView");			
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
 	IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 }
 
 /* ASJS */
@@ -170,8 +170,8 @@ DataGridColumnList {
 	IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	border-style: none;
 	background-color: #FFFFFF;
 }
@@ -180,7 +180,7 @@ DataGridColumnList {
 	background-color: #FFFFFF;
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.HorizontalLayout");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	flex-grow: 1;
 }
 
@@ -204,8 +204,8 @@ DataGridColumnList {
 	IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	border-style: none;
 	background-color: #FFFFFF;
 }
@@ -247,7 +247,7 @@ DateChooserHeader {
 
 DateItemRenderer
 {
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 	text-align: center;
 	flex-shrink: 0;
 	flex-grow: 1;
@@ -305,11 +305,11 @@ VDividedContainerDivider {
 /* Groups */
 
 Form {
-	IBeadView: ClassReference("org.apache.royale.html.beads.GroupView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.GroupView");
 }
 
 Group {
-	IBeadView: ClassReference("org.apache.royale.html.beads.GroupView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.GroupView");
 }
 
 HGroup {
@@ -330,7 +330,7 @@ RangeStepper {
 
 HContainer
 {
-	IBeadView: ClassReference("org.apache.royale.html.beads.ContainerView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.views.ContainerView");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.HorizontalLayout");
 	white-space: nowrap;
 }
@@ -375,13 +375,13 @@ ImageButton:active
 
 VContainer
 {
-	IBeadView: ClassReference("org.apache.royale.html.beads.ContainerView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.views.ContainerView");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
 }
 
 List
 {
-	IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+	IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
 	IBeadView:  ClassReference("org.apache.royale.html.beads.ListView");			
 	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
@@ -389,7 +389,7 @@ List
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 }
 
 .DynamicList
@@ -402,7 +402,7 @@ List
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	border-style: solid;
 	border-color: #222222;
 	background-color: #FFFFFF;
@@ -470,15 +470,15 @@ CascadingMenuItemRenderer {
 
 Accordion
 {
-	IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+	IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
 	IBeadView:  ClassReference("org.apache.royale.html.beads.AccordionView");			
 	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.OneFlexibleChildVerticalLayoutForOverflow");
 	IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.AccordionItemRenderer");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	IAccordionCollapseBead: ClassReference("org.apache.royale.html.beads.AccordionCollapseBead");
 	border-style: solid;
 	border-color: #222222;
@@ -512,7 +512,7 @@ Tree
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.TreeItemRenderer");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	border: 1px solid #222222;
 }
 
@@ -532,7 +532,7 @@ TreeGrid .TreeGridColumn {
 	background-color: #FFFFFF;
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.BasicLayout");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	position: absolute;
 	flex-grow: 1;
 }
@@ -584,7 +584,7 @@ PopUpList
 	
 SimpleList
 {
-	IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+	IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
 	IBeadView:  ClassReference("org.apache.royale.html.beads.ListView");
 	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
@@ -592,7 +592,7 @@ SimpleList
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
 	IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 }
 
 Slider
@@ -634,7 +634,7 @@ Spinner
 
 StringItemRenderer
 {
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 	padding-top: 4px;
 	padding-bottom: 4px;
 	flex-shrink: 0;
@@ -652,7 +652,7 @@ AccordionItemRenderer
 
 TreeItemRenderer
 {
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 	height: 24;
 	flex-shrink: 0;
 	flex-grow: 1;
@@ -660,7 +660,7 @@ TreeItemRenderer
 
 MenuItemRenderer
 {
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 	height: 24;
 	flex-shrink: 0;
 	flex-grow: 1;
@@ -668,7 +668,7 @@ MenuItemRenderer
 
 MenuBarItemRenderer
 {
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 	height: 24;
 	flex-shrink: 0;
 	flex-grow: 1;
@@ -676,7 +676,7 @@ MenuBarItemRenderer
 
 CascadingMenuItemRenderer
 {
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 	height: 24;
 	flex-shrink: 0;
 	flex-grow: 1;
@@ -758,7 +758,7 @@ ToolTip
 
 View
 {
-	IBeadView: ClassReference("org.apache.royale.html.beads.GroupView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.GroupView");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.BasicLayout");
 }
 
@@ -786,7 +786,7 @@ global
 	}
 
 	Accordion {
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
 	}
 	
 	Alert
@@ -811,7 +811,7 @@ global
 	
 	ButtonBar
 	{
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
 	}
 	
 	CheckBox
@@ -839,7 +839,7 @@ global
 	{
 		IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
 		IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.ContainerContentArea");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.ContainerContentArea");
 	}
 	
 	ControlBar
@@ -864,13 +864,13 @@ global
 	DataContainer {
 		IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
 		IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
 		font-size: 11px;
 		font-family: Arial;
 	}
 	
 	DataGridButtonBar {
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
 	}
 	
 	DateChooserList {
@@ -902,7 +902,7 @@ global
 	
 	DropDownList
 	{
-		IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+		IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
 		IBeadView: ClassReference("org.apache.royale.html.beads.DropDownListView");
 		IBeadController: ClassReference("org.apache.royale.html.beads.controllers.DropDownListController");
 		IPopUp: ClassReference("org.apache.royale.html.supportClasses.DropDownListList");
@@ -912,7 +912,7 @@ global
 	
 	DropDownListList
 	{
-		IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+		IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
 		IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.TextItemRendererFactoryForArrayData");
 		IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 		IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
@@ -962,7 +962,7 @@ global
 		iBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
 		iBorderBead: ClassReference('org.apache.royale.html.beads.SingleLineBorderBead');
 		iBorderModel: ClassReference('org.apache.royale.html.beads.models.SingleLineBorderModel');
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
 		font-size: 11px;
 		font-family: Arial;
 	}
@@ -988,14 +988,14 @@ global
 	
 	Panel
 	{
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.ContainerContentArea");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.ContainerContentArea");
 		IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
 		IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");    
 	}
 	
 	PanelWithControlBar
 	{
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.ContainerContentArea");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.ContainerContentArea");
 		IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
 		IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
 	}
@@ -1093,13 +1093,13 @@ global
 	}
 	
 	Tree {
-		IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+		IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
 	}
 	
 	/*
 	TextFieldItemRenderer
 	{
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 	height: 16;
 	}
 	*/
diff --git a/frameworks/projects/Basic/src/main/royale/BasicClasses.as b/frameworks/projects/Basic/src/main/royale/BasicClasses.as
index ff55193..891cff3 100644
--- a/frameworks/projects/Basic/src/main/royale/BasicClasses.as
+++ b/frameworks/projects/Basic/src/main/royale/BasicClasses.as
@@ -77,8 +77,7 @@ internal class BasicClasses
 		import org.apache.royale.html.beads.CheckBoxView; CheckBoxView;
 	}
     import org.apache.royale.html.beads.ComboBoxView; ComboBoxView;
-    import org.apache.royale.html.beads.ContainerView; ContainerView;
-	import org.apache.royale.html.beads.GroupView; GroupView;
+	
 	COMPILE::SWF
 	{
 	    import org.apache.royale.html.beads.ControlBarMeasurementBead; ControlBarMeasurementBead;
@@ -129,7 +128,6 @@ internal class BasicClasses
 	    import org.apache.royale.html.beads.TextInputWithBorderView; TextInputWithBorderView;
 	}
 	import org.apache.royale.html.beads.models.AlertModel; AlertModel;
-	import org.apache.royale.html.beads.models.ArraySelectionModel; ArraySelectionModel;
 	import org.apache.royale.html.beads.models.ArrayListSelectionModel; ArrayListSelectionModel;
 	import org.apache.royale.html.beads.models.SingleSelectionCollectionViewModel; SingleSelectionCollectionViewModel;
 	import org.apache.royale.html.beads.models.TreeModel; TreeModel;
@@ -155,7 +153,6 @@ internal class BasicClasses
 	{
 		import org.apache.royale.html.beads.models.ValueToggleButtonModel; ValueToggleButtonModel;
 	}
-	import org.apache.royale.html.beads.models.ViewportModel; ViewportModel;
 	COMPILE::SWF
 	{
     	import org.apache.royale.html.beads.controllers.DropDownListController; DropDownListController;
@@ -163,7 +160,6 @@ internal class BasicClasses
 	}
     import org.apache.royale.html.beads.controllers.ComboBoxController; ComboBoxController;
     import org.apache.royale.html.beads.controllers.AccordionItemRendererMouseController; AccordionItemRendererMouseController;
-    import org.apache.royale.html.beads.controllers.ItemRendererMouseController; ItemRendererMouseController;
     import org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController; ListSingleSelectionMouseController;
 	import org.apache.royale.html.beads.controllers.TreeSingleSelectionMouseController; TreeSingleSelectionMouseController;
 	import org.apache.royale.html.beads.controllers.MenuSelectionMouseController; MenuSelectionMouseController;
@@ -191,7 +187,6 @@ internal class BasicClasses
 	{
 		import org.apache.royale.html.beads.layouts.HScrollBarLayout; HScrollBarLayout;
     	import org.apache.royale.html.beads.layouts.VScrollBarLayout; VScrollBarLayout;
-		import org.apache.royale.html.supportClasses.ContainerContentArea; ContainerContentArea;
 	}
 	import org.apache.royale.html.beads.layouts.TileLayout; TileLayout;
     import org.apache.royale.html.beads.TextItemRendererFactoryForArrayData; TextItemRendererFactoryForArrayData;
@@ -199,9 +194,6 @@ internal class BasicClasses
     import org.apache.royale.html.beads.DynamicItemsRendererFactoryForArrayListData; DynamicItemsRendererFactoryForArrayListData;
 	import org.apache.royale.html.beads.DataItemRendererFactoryForArrayList; DataItemRendererFactoryForArrayList;
 	import org.apache.royale.html.beads.DataItemRendererFactoryForHierarchicalData; DataItemRendererFactoryForHierarchicalData;
-	import org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView; DataItemRendererFactoryForCollectionView;
-	import org.apache.royale.html.supportClasses.DataGroup; DataGroup;
-	import org.apache.royale.html.supportClasses.Viewport; Viewport;
 	import org.apache.royale.html.supportClasses.ScrollingViewport; ScrollingViewport;
 	import org.apache.royale.html.supportClasses.TextButtonItemRenderer; TextButtonItemRenderer;
 
@@ -264,7 +256,6 @@ internal class BasicClasses
 	import org.apache.royale.svg.CompoundGraphic; CompoundGraphic;
 
     import org.apache.royale.html.beads.models.DataProviderModel; DataProviderModel;
-	import org.apache.royale.html.beads.DataContainerView; DataContainerView;
 
 	COMPILE::SWF
 	{
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/IScrollingLayoutParent.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/IScrollingLayoutParent.as
index fb9f933..eb1d7cc 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/IScrollingLayoutParent.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/IScrollingLayoutParent.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.core
 {
-	import org.apache.royale.html.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.Border;
 	import org.apache.royale.html.supportClasses.ScrollBar;
 
     /**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/Alert.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/Alert.as
index 69469e9..07730ff 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/Alert.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/Alert.as
@@ -32,8 +32,8 @@ package org.apache.royale.html
 	 *  org.apache.royale.core.IBeadModel: the data model for the Alert.
 	 *  org.apache.royale.core.IBeadView: the bead used to create the parts of the Alert.
 	 *  org.apache.royale.core.IBeadController: the bead used to handle input events.
-	 *  org.apache.royale.core.IBorderBead: if present, draws a border around the Alert.
-	 *  org.apache.royale.core.IBackgroundBead: if present, places a solid color background below the Alert.
+	 *  org.apache.royale.core.beads.IBorderBead: if present, draws a border around the Alert.
+	 *  org.apache.royale.core.beads.IBackgroundBead: if present, places a solid color background below the Alert.
 	 *  
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/CheckBox.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/CheckBox.as
index 1cbddac..ca18ff0 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/CheckBox.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/CheckBox.as
@@ -47,7 +47,7 @@ package org.apache.royale.html
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
-     *  @productversion Royale 0.0
+     *  @productversion Royale 0.9.3
      */
 	[Event(name="change", type="org.apache.royale.events.Event")]
 
@@ -59,7 +59,7 @@ package org.apache.royale.html
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
-     *  @productversion Royale 0.0
+     *  @productversion Royale 0.9.3
      */
     COMPILE::SWF
 	public class CheckBox extends UIButtonBase implements IStrand, ISelectable
@@ -70,7 +70,7 @@ package org.apache.royale.html
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9.3
          */
 		public function CheckBox()
 		{
@@ -85,7 +85,7 @@ package org.apache.royale.html
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9.3
          */
 		public function get text():String
 		{
@@ -108,7 +108,7 @@ package org.apache.royale.html
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9.3
          */
 		public function get selected():Boolean
 		{
@@ -136,7 +136,7 @@ package org.apache.royale.html
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
-     *  @productversion Royale 0.0
+     *  @productversion Royale 0.9.3
      */
 	[Event(name="change", type="org.apache.royale.events.Event")]
 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/ControlBar.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/ControlBar.as
index 550b868..2266441 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/ControlBar.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/ControlBar.as
@@ -40,8 +40,8 @@ package org.apache.royale.html
 	 *
 	 *  org.apache.royale.core.IBeadModel: the data model for the component.
 	 *  org.apache.royale.core.IMeasurementBead: helps determine the overlay size of the ControlBar for layout.
-	 *  org.apache.royale.core.IBorderBead: if present, displays a border around the component.
-	 *  org.apache.royale.core.IBackgroundBead: if present, displays a solid background below the ControlBar.
+	 *  org.apache.royale.core.beads.IBorderBead: if present, displays a border around the component.
+	 *  org.apache.royale.core.beads.IBackgroundBead: if present, displays a solid background below the ControlBar.
 	 *
      *  @toplevel
 	 *  @langversion 3.0
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DataContainer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DataContainer.as
index 40e8d75..6c9ab87 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DataContainer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DataContainer.as
@@ -41,12 +41,12 @@ package org.apache.royale.html
     {
         import org.apache.royale.core.WrappedHTMLElement;
         import org.apache.royale.html.beads.ListView;
-        import org.apache.royale.html.supportClasses.DataGroup;
+        import org.apache.royale.core.supportClasses.DataGroup;
     }
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.beads.models.ListPresentationModel;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 
 	/**
 	 *  Indicates that the initialization of the list is complete.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DropDownList.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DropDownList.as
index 77781e3..3823edc 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DropDownList.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/DropDownList.as
@@ -24,7 +24,7 @@ package org.apache.royale.html
     {
         import goog.events;
         import org.apache.royale.core.WrappedHTMLElement;
-        import org.apache.royale.html.beads.models.ArraySelectionModel;
+        import org.apache.royale.core.beads.models.ArraySelectionModel;
         import org.apache.royale.html.util.addElementToWrapper;
     }
 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/Panel.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/Panel.as
index f455e2d..bc09b1f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/Panel.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/Panel.as
@@ -40,8 +40,8 @@ package org.apache.royale.html
 	 *  org.apache.royale.core.IBeadModel: the data model for the Panel that includes the title and whether
 	 *  or not to display the close button.
 	 *  org.apache.royale.core.IBeadView: creates the parts of the Panel.
-	 *  org.apache.royale.core.IBorderBead: if present, draws a border around the Panel.
-	 *  org.apache.royale.core.IBackgroundBead: if present, provides a colored background for the Panel.
+	 *  org.apache.royale.core.beads.IBorderBead: if present, draws a border around the Panel.
+	 *  org.apache.royale.core.beads.IBackgroundBead: if present, provides a colored background for the Panel.
 	 *  
      *  @toplevel
 	 *  @see PanelWithControlBar
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/SimpleAlert.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/SimpleAlert.as
index 409bd8c..3ac323f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/SimpleAlert.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/SimpleAlert.as
@@ -33,8 +33,8 @@ package org.apache.royale.html
 	 *  org.apache.royale.core.IBeadModel: the data model, which includes the message.
 	 *  org.apache.royale.core.IBeadView:  the bead that constructs the visual parts of the Alert.
 	 *  org.apache.royale.core.IBeadController: the bead responsible for handling input events.
-	 *  org.apache.royale.core.IBorderBead: a bead, if present, that draws a border around the control.
-	 *  org.apache.royale.core.IBackgroundBead: a bead, if present, that creates a solid-color background.
+	 *  org.apache.royale.core.beads.IBorderBead: a bead, if present, that draws a border around the control.
+	 *  org.apache.royale.core.beads.IBackgroundBead: a bead, if present, that creates a solid-color background.
 	 *  
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/accessories/NumericOnlyTextInputBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/accessories/NumericOnlyTextInputBead.as
index b81749e..7bf2a9a 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/accessories/NumericOnlyTextInputBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/accessories/NumericOnlyTextInputBead.as
@@ -35,7 +35,7 @@ package org.apache.royale.html.accessories
 	import org.apache.royale.events.IEventDispatcher;
 	COMPILE::SWF
 	{
-		import org.apache.royale.html.beads.ITextFieldView;			
+		import org.apache.royale.core.beads.ITextFieldView;			
 	}
 	
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/accessories/PasswordInputBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/accessories/PasswordInputBead.as
index 2996991..ad3413f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/accessories/PasswordInputBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/accessories/PasswordInputBead.as
@@ -29,7 +29,7 @@ package org.apache.royale.html.accessories
 	import org.apache.royale.events.IEventDispatcher;
 	COMPILE::SWF
 	{
-		import org.apache.royale.html.beads.ITextFieldView;
+		import org.apache.royale.core.beads.ITextFieldView;
 	}
 	
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/AccordionCollapseBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/AccordionCollapseBead.as
index d5e0836..4b648d5 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/AccordionCollapseBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/AccordionCollapseBead.as
@@ -27,6 +27,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.html.beads.layouts.IOneFlexibleChildLayout;
 	import org.apache.royale.html.supportClasses.ICollapsible;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
+	import org.apache.royale.core.IListView;
 	
 	public class AccordionCollapseBead implements IAccordionCollapseBead
 	{
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/AlertView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/AlertView.as
index 82f7b33..4a6ed84 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/AlertView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/AlertView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+	import org.apache.royale.core.beads.GroupView;
     import org.apache.royale.core.BeadViewBase;
 	import org.apache.royale.core.IAlertModel;
 	import org.apache.royale.core.IBead;
@@ -33,7 +34,7 @@ package org.apache.royale.html.beads
     import org.apache.royale.events.CloseEvent;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.Alert;
-    import org.apache.royale.html.Container;
+    import org.apache.royale.core.Container;
     import org.apache.royale.html.ControlBar;
     import org.apache.royale.html.Group;
     import org.apache.royale.html.Label;
@@ -46,6 +47,8 @@ package org.apache.royale.html.beads
         import org.apache.royale.core.ValuesManager;
         import org.apache.royale.utils.loadBeadFromValuesManager;
         import org.apache.royale.core.IMeasurementBead;
+		import org.apache.royale.core.beads.IBackgroundBead;
+		import org.apache.royale.core.beads.IBorderBead;
 	}
 	
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/BackgroundImageBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/BackgroundImageBead.as
index f553af2..2b69620 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/BackgroundImageBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/BackgroundImageBead.as
@@ -30,6 +30,8 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.core.ValuesManager;
+
+	import org.apache.royale.core.beads.IBackgroundBead;
 	
 	/**
 	 *  The BackgroundImageBead is used to render an image as the background to any component
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ButtonBarView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ButtonBarView.as
index 90ebfbd..1b10031 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ButtonBarView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ButtonBarView.as
@@ -26,7 +26,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.Border;
 
 	/**
 	 *  The ButtonBarView class creates the visual elements of the org.apache.royale.html.ButtonBar 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ControlBarMeasurementBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ControlBarMeasurementBead.as
index 3c5a8e2..2ad8f75 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ControlBarMeasurementBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ControlBarMeasurementBead.as
@@ -23,7 +23,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.IMeasurementBead;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IUIBase;
-	import org.apache.royale.html.Container;
+	import org.apache.royale.core.Container;
 	
 	/**
 	 *  The ControlBarMeasurementBead class measures the size of a org.apache.royale.html.ControlBar
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridView.as
index fe14fc3..6540d86 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataGridView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+	import org.apache.royale.core.beads.GroupView;
 	import org.apache.royale.core.IBead;
 	import org.apache.royale.core.IBeadModel;
 	import org.apache.royale.core.IBeadView;
@@ -28,13 +29,13 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.Container;
+	import org.apache.royale.core.Container;
 	import org.apache.royale.html.DataGrid;
 	import org.apache.royale.html.DataGridButtonBar;
 	import org.apache.royale.html.beads.layouts.ButtonBarLayout;
 	import org.apache.royale.html.supportClasses.DataGridColumnList;
 	import org.apache.royale.html.supportClasses.IDataGridColumn;
-	import org.apache.royale.html.supportClasses.Viewport;
+	import org.apache.royale.core.supportClasses.Viewport;
 
 		/**
 		 *  The DataGridView class is the visual bead for the org.apache.royale.html.DataGrid.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForArrayData.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForArrayData.as
index dc1f1c4..e04e2ba 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForArrayData.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForArrayData.as
@@ -40,7 +40,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.IChild;
 	import org.apache.royale.core.ILayoutHost;
 	import org.apache.royale.core.IParentIUIBase;
-    import org.apache.royale.html.supportClasses.DataItemRenderer;
+    import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
 
     [Event(name="itemRendererCreated",type="org.apache.royale.events.ItemRendererEvent")]
@@ -162,7 +162,7 @@ package org.apache.royale.html.beads
 		 *  @royaleignorecoercion org.apache.royale.core.IListPresentationModel
 		 *  @royaleignorecoercion org.apache.royale.core.UIBase
 		 *  @royaleignorecoercion org.apache.royale.core.ISelectableItemRenderer
-		 *  @royaleignorecoercion org.apache.royale.html.supportClasses.DataItemRenderer
+		 *  @royaleignorecoercion org.apache.royale.core.DataItemRenderer
 		 *  @royaleignorecoercion org.apache.royale.events.IEventDispatcher
          */		
 		protected function dataProviderChangeHandler(event:Event):void
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForArrayList.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForArrayList.as
index a24ede7..ae24369 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForArrayList.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForArrayList.as
@@ -33,7 +33,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.events.EventDispatcher;
 	import org.apache.royale.events.ItemRendererEvent;
-    import org.apache.royale.html.supportClasses.DataItemRenderer;
+    import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
 
 	import org.apache.royale.core.IList;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForCollectionView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForCollectionView.as
index 8226e19..336dee5 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForCollectionView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForCollectionView.as
@@ -36,8 +36,9 @@ package org.apache.royale.html.beads
 	import org.apache.royale.events.EventDispatcher;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.supportClasses.StringItemRenderer;
-	import org.apache.royale.html.supportClasses.UIItemRendererBase;
+	import org.apache.royale.core.UIItemRendererBase;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
+	import org.apache.royale.core.IListView;
 
 	
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForColumnData.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForColumnData.as
index 3212bbf..d3634f4 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForColumnData.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForColumnData.as
@@ -29,7 +29,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
 	
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DateChooserView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DateChooserView.as
index ba9c912..cce7944 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DateChooserView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DateChooserView.as
@@ -28,11 +28,11 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.Container;
+	import org.apache.royale.core.Container;
 	import org.apache.royale.html.Group;
 	import org.apache.royale.html.List;
 	import org.apache.royale.html.TextButton;
-	import org.apache.royale.html.beads.GroupView;
+	import org.apache.royale.core.beads.GroupView;
 	import org.apache.royale.html.beads.layouts.HorizontalLayout;
 	import org.apache.royale.html.beads.layouts.TileLayout;
 	import org.apache.royale.html.beads.models.DateChooserModel;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DispatchInputFinishedBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DispatchInputFinishedBead.as
index e2c73b7..06f76a0 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DispatchInputFinishedBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DispatchInputFinishedBead.as
@@ -36,7 +36,7 @@ package org.apache.royale.html.beads
 		{
 			import flash.events.FocusEvent;
 			import flash.events.KeyboardEvent;
-			import org.apache.royale.html.beads.ITextFieldView;
+			import org.apache.royale.core.beads.ITextFieldView;
 			import org.apache.royale.events.utils.WhitespaceKeys;
 		}
 		
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DispatchKeyboardEventBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DispatchKeyboardEventBead.as
index 2559443..f53f4cd 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DispatchKeyboardEventBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DispatchKeyboardEventBead.as
@@ -35,7 +35,7 @@ package org.apache.royale.html.beads
 	COMPILE::SWF
 	{
 		import flash.events.KeyboardEvent;
-		import org.apache.royale.html.beads.ITextFieldView;
+		import org.apache.royale.core.beads.ITextFieldView;
 	}
 	
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DropDownListView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DropDownListView.as
index 2bd0b16..339fdad 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DropDownListView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DropDownListView.as
@@ -38,6 +38,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.utils.SolidBorderUtil;
 	import org.apache.royale.utils.UIUtils;
+    import org.apache.royale.core.beads.IDropDownListView;
     
     /**
      *  The DropDownListView class is the default view for
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DynamicItemsRendererFactoryForArrayListData.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DynamicItemsRendererFactoryForArrayListData.as
index 1e97f4c..d0ba866 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DynamicItemsRendererFactoryForArrayListData.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DynamicItemsRendererFactoryForArrayListData.as
@@ -35,7 +35,7 @@ package org.apache.royale.html.beads
     import org.apache.royale.events.Event;
     import org.apache.royale.events.EventDispatcher;
     import org.apache.royale.events.IEventDispatcher;
-    import org.apache.royale.html.beads.IListView;
+    import org.apache.royale.core.IListView;
     import org.apache.royale.utils.loadBeadFromValuesManager;
 
     [Event(name="itemRendererCreated",type="org.apache.royale.events.ItemRendererEvent")]
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IDataGridView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IDataGridView.as
index 7eeba64..ddd5036 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IDataGridView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IDataGridView.as
@@ -20,7 +20,7 @@ package org.apache.royale.html.beads
 {
 	import org.apache.royale.core.IBeadView;
 	import org.apache.royale.core.IUIBase;
-	import org.apache.royale.html.Container;
+	import org.apache.royale.core.Container;
 	
 	/**
 	 *  The IDataGridView interface marks as a component as being the bead that
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ListView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ListView.as
index e0d103d..f76119c 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ListView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ListView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+	import org.apache.royale.core.beads.views.DataContainerView;
 	import org.apache.royale.core.BeadViewBase;
 	import org.apache.royale.core.ContainerBase;
 	import org.apache.royale.core.IBead;
@@ -39,9 +40,8 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.models.ArraySelectionModel;
-	import org.apache.royale.html.supportClasses.Border;
-	import org.apache.royale.html.supportClasses.DataGroup;
+	import org.apache.royale.core.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.DataGroup;
 
 	/**
 	 *  The List class creates the visual elements of the org.apache.royale.html.List
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultilineTextFieldView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultilineTextFieldView.as
index 32e59e3..14a4aa0 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultilineTextFieldView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultilineTextFieldView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+    import org.apache.royale.core.beads.TextFieldViewBase;
 	import flash.text.TextFieldType;
 	
     /**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/NumericStepperView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/NumericStepperView.as
index 70aa3e2..78af712 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/NumericStepperView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/NumericStepperView.as
@@ -34,7 +34,7 @@ package org.apache.royale.html.beads
     import org.apache.royale.html.Label;
 	import org.apache.royale.html.Spinner;
 	import org.apache.royale.html.TextInput;
-	import org.apache.royale.html.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.Border;
 	
 	/**
 	 *  The NumericStepperView class creates the visual elements of the 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/PanelView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/PanelView.as
index d4ff9d7..44b1007 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/PanelView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/PanelView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+	import org.apache.royale.core.beads.GroupView;
 	import org.apache.royale.core.IBeadView;
 	import org.apache.royale.core.IBeadLayout;
 	import org.apache.royale.core.ILayoutChild;
@@ -36,7 +37,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.geom.Rectangle;
 	import org.apache.royale.geom.Size;
 	import org.apache.royale.html.Group;
-	import org.apache.royale.html.Container;
+	import org.apache.royale.core.Container;
 	import org.apache.royale.html.Panel;
 	import org.apache.royale.html.TitleBar;
 	import org.apache.royale.utils.CSSUtils;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/PanelWithControlBarView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/PanelWithControlBarView.as
index ff0c4ae..8b07778 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/PanelWithControlBarView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/PanelWithControlBarView.as
@@ -32,7 +32,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.geom.Rectangle;
 	import org.apache.royale.geom.Size;
-	import org.apache.royale.html.Container;
+	import org.apache.royale.core.Container;
 	import org.apache.royale.html.Panel;
 	import org.apache.royale.html.ControlBar;
 	import org.apache.royale.html.TitleBar;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SimpleAlertView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SimpleAlertView.as
index abd66b3..5cb5886 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SimpleAlertView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SimpleAlertView.as
@@ -37,6 +37,8 @@ package org.apache.royale.html.beads
     import org.apache.royale.html.Label;
     import org.apache.royale.html.TextButton;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
+	import org.apache.royale.core.beads.IBackgroundBead;
+	import org.apache.royale.core.beads.IBorderBead;
 	
 	/**
 	 *  The SimpleAlertView class creates the visual elements of the 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SingleLineBorderBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SingleLineBorderBead.as
index f239d73..90ee1e7 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SingleLineBorderBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SingleLineBorderBead.as
@@ -29,6 +29,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.utils.CSSBorderUtils;
+	import org.apache.royale.core.beads.IBorderBead;
 
     /**
      *  The SingleLineBorderBead class draws a single line solid border.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SolidBackgroundBead.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SolidBackgroundBead.as
index 0bbd1c0..0adc650 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SolidBackgroundBead.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SolidBackgroundBead.as
@@ -30,6 +30,9 @@ package org.apache.royale.html.beads
     import org.apache.royale.events.Event;
     import org.apache.royale.events.IEventDispatcher;
 
+    import org.apache.royale.core.beads.IBackgroundBead;
+    
+
     /**
      *  The SolidBackgroundBead class draws a solid filled background.
      *  The color and opacity can be specified in CSS.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
index 54a8396..7b7f48b 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
-    
+    import org.apache.royale.core.beads.GroupView;
 	
 	/**
 	 *  The TableCellView class is the view bead for TableCell. It has no function
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextAreaView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextAreaView.as
index c084d13..0e1a54c 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextAreaView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextAreaView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+	import org.apache.royale.core.beads.TextFieldViewBase;
 	import flash.display.DisplayObject;
 	import flash.events.Event;
 	import flash.events.IEventDispatcher;
@@ -29,9 +30,9 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IParent;
     import org.apache.royale.core.ValuesManager;
-	import org.apache.royale.html.beads.models.ScrollBarModel;
-	import org.apache.royale.html.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.Border;
 	import org.apache.royale.html.supportClasses.VScrollBar;
+	import org.apache.royale.html.beads.models.ScrollBarModel;
 
     /**
      *  The TextAreaView class is the default view for
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldView.as
index 43660b2..4a558e9 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+    import org.apache.royale.core.beads.TextFieldViewBase;
 	import flash.text.TextFieldType;
 	
     /**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextInputView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextInputView.as
index 0e52879..b00b550 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextInputView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextInputView.as
@@ -17,6 +17,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+    import org.apache.royale.core.beads.TextFieldViewBase;
 	import flash.display.DisplayObject;
 	import flash.text.TextFieldType;
 	
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextInputWithBorderView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextInputWithBorderView.as
index 28d6dd5..1a5ec1a 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextInputWithBorderView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextInputWithBorderView.as
@@ -31,7 +31,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
     import org.apache.royale.geom.Rectangle;
-	import org.apache.royale.html.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.Border;
 
     /**
      *  The TextInputWithBorderView class is the default view for
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TitleBarView.mxml b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TitleBarView.mxml
index d4e399e..2d0332d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TitleBarView.mxml
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TitleBarView.mxml
@@ -26,7 +26,7 @@ limitations under the License.
  @productversion Royale 0.0
 -->
 <js:MXMLBeadView xmlns:fx="http://ns.adobe.com/mxml/2009"
-                     xmlns:js="library://ns.apache.org/royale/basic">
+                 xmlns:js="library://ns.apache.org/royale/basic">
 				  
     <fx:Script>
         <![CDATA[
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TreeGridView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TreeGridView.as
index 7905fc3..3a811e2 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TreeGridView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TreeGridView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {
+	import org.apache.royale.core.beads.GroupView;
 	import org.apache.royale.core.IBeadLayout;
 	import org.apache.royale.core.IBeadModel;
 	import org.apache.royale.core.IBeadView;
@@ -30,7 +31,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.Container;
+	import org.apache.royale.core.Container;
 	import org.apache.royale.html.DataGridButtonBar;
 	import org.apache.royale.html.List;
 	import org.apache.royale.html.Tree;
@@ -43,7 +44,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.html.supportClasses.DataGridColumn;
 	import org.apache.royale.html.supportClasses.IDataGridColumn;
 	import org.apache.royale.html.supportClasses.TreeGridColumn;
-	import org.apache.royale.html.supportClasses.Viewport;
+	import org.apache.royale.core.supportClasses.Viewport;
 	
 	/**
 	 * The TreeGridView class is responsible for creating the sub-components of the TreeGrid:
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataContainerView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataContainerView.as
index 86905b8..dcb5925 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataContainerView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataContainerView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads
 {	
+	import org.apache.royale.core.beads.views.ContainerView;
 	import org.apache.royale.core.BeadViewBase;
 	import org.apache.royale.core.ContainerBase;
 	import org.apache.royale.core.IBead;
@@ -40,8 +41,9 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.supportClasses.Border;
-	import org.apache.royale.html.supportClasses.DataGroup;
+	import org.apache.royale.core.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.DataGroup;
+	import org.apache.royale.core.IListView;
 
 	/**
 	 *  The DataContainerView provides the visual elements for the DataContainer.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataItemRendererFactoryForArrayData.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataItemRendererFactoryForArrayData.as
index e78e67f..338207a 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataItemRendererFactoryForArrayData.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualDataItemRendererFactoryForArrayData.as
@@ -39,7 +39,7 @@ package org.apache.royale.html.beads
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.events.ItemRendererEvent;
 	import org.apache.royale.html.List;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
 
     [Event(name="itemRendererCreated",type="org.apache.royale.events.ItemRendererEvent")]
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualListView.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualListView.as
index b689c2a..6fac115 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualListView.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/VirtualListView.as
@@ -41,9 +41,8 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.models.ArraySelectionModel;
-	import org.apache.royale.html.supportClasses.Border;
-	import org.apache.royale.html.supportClasses.DataGroup;
+	import org.apache.royale.core.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.DataGroup;
     COMPILE::SWF {
         import org.apache.royale.geom.Size;
     }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DropDownListController.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DropDownListController.as
index a3dbefb..062a880 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DropDownListController.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DropDownListController.as
@@ -30,7 +30,7 @@ package org.apache.royale.html.beads.controllers
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.events.MouseEvent;
-	import org.apache.royale.html.beads.IDropDownListView;
+	import org.apache.royale.core.beads.IDropDownListView;
 
     /**
      *  The DropDownListController class is the controller for
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/EditableTextKeyboardController.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/EditableTextKeyboardController.as
index 7e07b2b..65204c3 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/EditableTextKeyboardController.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/EditableTextKeyboardController.as
@@ -24,7 +24,7 @@ package org.apache.royale.html.beads.controllers
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.ITextModel;
 	import org.apache.royale.core.UIBase;
-	import org.apache.royale.html.beads.ITextFieldView;
+	import org.apache.royale.core.beads.ITextFieldView;
 	
 	/**
 	 *  The EditableTextKeyboardController class bead intercepts keyboard events on the
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListSingleSelectionMouseController.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListSingleSelectionMouseController.as
index bd8ccb0..34d2ec0 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListSingleSelectionMouseController.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListSingleSelectionMouseController.as
@@ -29,7 +29,7 @@ package org.apache.royale.html.beads.controllers
 	import org.apache.royale.events.ItemAddedEvent;
 	import org.apache.royale.events.ItemRemovedEvent;
 	import org.apache.royale.events.MouseEvent;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 	
 	import org.apache.royale.events.ItemClickedEvent;
 
@@ -103,7 +103,7 @@ package org.apache.royale.html.beads.controllers
          *  @productversion Royale 0.9
          *  @royaleignorecoercion org.apache.royale.core.ISelectionModel
          *  @royaleignorecoercion org.apache.royale.events.IEventDispatcher
-         *  @royaleignorecoercion org.apache.royale.html.beads.IListView
+         *  @royaleignorecoercion org.apache.royale.core.IListView
          */
 		public function set strand(value:IStrand):void
 		{
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/ButtonBarLayout.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/ButtonBarLayout.as
index 80450c6..d152a74 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/ButtonBarLayout.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/ButtonBarLayout.as
@@ -24,7 +24,7 @@ package org.apache.royale.html.beads.layouts
 	import org.apache.royale.core.IStyleableObject;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.html.beads.models.ButtonBarModel;
-	import org.apache.royale.html.supportClasses.UIItemRendererBase;
+	import org.apache.royale.core.UIItemRendererBase;
 
 	/**
 	 *  The ButtonBarLayout class bead sizes and positions the button
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/FlexibleFirstChildHorizontalLayout.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/FlexibleFirstChildHorizontalLayout.as
index 94bbeef..4addfbd 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/FlexibleFirstChildHorizontalLayout.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/FlexibleFirstChildHorizontalLayout.as
@@ -36,7 +36,7 @@ package org.apache.royale.html.beads.layouts
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
     import org.apache.royale.geom.Rectangle;
-    import org.apache.royale.html.supportClasses.Viewport;
+    import org.apache.royale.core.supportClasses.Viewport;
 	import org.apache.royale.utils.CSSUtils;
 
     /**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ButtonBarModel.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ButtonBarModel.as
index e4639c8..73cb038 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ButtonBarModel.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ButtonBarModel.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads.models
 {
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	import org.apache.royale.core.IRollOverModel;
 	import org.apache.royale.core.ISelectionModel;
 	import org.apache.royale.core.IStrand;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ComboBoxModel.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ComboBoxModel.as
index 2f8f50c..a64b6ad 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ComboBoxModel.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ComboBoxModel.as
@@ -18,12 +18,13 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads.models
 {
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	import org.apache.royale.core.IBead;
 	import org.apache.royale.core.IComboBoxModel;
 	import org.apache.royale.events.Event;
 			
 	/**
-	 *  The ComboBoxModel class bead extends org.apache.royale.html.beads.models.ArraySelectionModel 
+	 *  The ComboBoxModel class bead extends org.apache.royale.core.beads.models.ArraySelectionModel 
 	 *  and adds the text being displayed by the org.apache.royale.html.ComboBox's input field.
 	 *  
 	 *  @langversion 3.0
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/DataGridCollectionViewModel.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/DataGridCollectionViewModel.as
index c615036..29119c1 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/DataGridCollectionViewModel.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/DataGridCollectionViewModel.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads.models
 {
+	import org.apache.royale.html.beads.models.SingleSelectionCollectionViewModel;
 	import org.apache.royale.core.IBeadModel;
 	import org.apache.royale.core.IDataGridModel;
 	import org.apache.royale.events.Event;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/DataGridModel.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/DataGridModel.as
index 9ce6797..a26281c 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/DataGridModel.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/DataGridModel.as
@@ -18,12 +18,13 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads.models
 {
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	import org.apache.royale.core.IBeadModel;
 	import org.apache.royale.core.IDataGridModel;
 	import org.apache.royale.events.Event;
 
 	/**
-	 *  The DataGridModel class bead extends org.apache.royale.html.beads.models.ArraySelectionModel
+	 *  The DataGridModel class bead extends org.apache.royale.core.beads.models.ArraySelectionModel
 	 *  to facilitate using an Array as the dataProvider for the DataGrid.
 	 *
 	 *  @langversion 3.0
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuBarModel.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuBarModel.as
index cc58610..199381f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuBarModel.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuBarModel.as
@@ -14,6 +14,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads.models
 {
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	import org.apache.royale.events.Event;
 
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuModel.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuModel.as
index e5f7b59..0d28965 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuModel.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuModel.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads.models
 {
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	import org.apache.royale.core.IStrand;
 
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/TreeModel.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/TreeModel.as
index 841d298..72ba76a 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/TreeModel.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/TreeModel.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.beads.models
 {
+	import org.apache.royale.html.beads.models.SingleSelectionCollectionViewModel;
 	import org.apache.royale.collections.HierarchicalData;
 	import org.apache.royale.collections.TreeData;
 	import org.apache.royale.events.CollectionEvent;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/AlternatingBackgroundColorStringItemRenderer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/AlternatingBackgroundColorStringItemRenderer.as
index a9e3a80..3e07154 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/AlternatingBackgroundColorStringItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/AlternatingBackgroundColorStringItemRenderer.as
@@ -18,7 +18,6 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.supportClasses
 {
-
 	/**
 	 *  The AlternatingBackgroundColorStringItemRenderer class displays data in string form using the data's toString()
 	 *  function and alternates between two background colors.  This is the most simple implementation for immutable lists
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ButtonBarButtonItemRenderer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ButtonBarButtonItemRenderer.as
index 9fe39b0..fe30c10 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ButtonBarButtonItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ButtonBarButtonItemRenderer.as
@@ -26,6 +26,7 @@ package org.apache.royale.html.supportClasses
 	import org.apache.royale.html.TextButton;
 	import org.apache.royale.html.beads.ITextItemRenderer;
 	import org.apache.royale.events.ItemClickedEvent;
+	import org.apache.royale.core.UIItemRendererBase;
 
 	/**
 	 *  The ButtonBarButtonItemRenderer class handles the display of each item for the 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/CascadingMenuItemRenderer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/CascadingMenuItemRenderer.as
index 50f6e39..81b3dd2 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/CascadingMenuItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/CascadingMenuItemRenderer.as
@@ -22,6 +22,7 @@ package org.apache.royale.html.supportClasses
 	import org.apache.royale.html.Label;
 	import org.apache.royale.html.beads.ITextItemRenderer;
 	import org.apache.royale.svg.Rect;
+	import org.apache.royale.core.DataItemRenderer;
 
 	/**
 	 * The CascadingMenuItemRenderer is the itemRenderer class for the elements of a CascadingMenu.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DateChooserList.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DateChooserList.as
index 5e7bb29..30fac6e 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DateChooserList.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DateChooserList.as
@@ -19,7 +19,7 @@
 package org.apache.royale.html.supportClasses
 {
 	import org.apache.royale.html.List;
-	import org.apache.royale.html.supportClasses.Viewport;
+	import org.apache.royale.core.supportClasses.Viewport;
 	import org.apache.royale.html.beads.layouts.TileLayout;
 	
 	public class DateChooserList extends List
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MenuBarItemRenderer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MenuBarItemRenderer.as
index 9e0c53b..8a606c4 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MenuBarItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MenuBarItemRenderer.as
@@ -20,6 +20,7 @@ package org.apache.royale.html.supportClasses
 {
 	import org.apache.royale.html.Label;
 	import org.apache.royale.html.beads.ITextItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	
 	public class MenuBarItemRenderer extends DataItemRenderer implements ITextItemRenderer
 	{
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MenuItemRenderer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MenuItemRenderer.as
index c53cb7c..bafc945 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MenuItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MenuItemRenderer.as
@@ -21,6 +21,7 @@ package org.apache.royale.html.supportClasses
 	import org.apache.royale.core.ISelectableItemRenderer;
 	import org.apache.royale.html.Label;
 	import org.apache.royale.html.beads.ITextItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 
 	/**
 	 * The MenuItemRenderer class is the default itemRenderer for Menus.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ScrollingViewport.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ScrollingViewport.as
index 4840770..99b032d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ScrollingViewport.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ScrollingViewport.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.html.supportClasses
 {
+	import org.apache.royale.core.supportClasses.Viewport;
 	import org.apache.royale.core.IBead;
 	import org.apache.royale.core.IBeadLayout;
     import org.apache.royale.core.IBorderPaddingMarginValuesImpl;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/StringItemRenderer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/StringItemRenderer.as
index b49c826..cb3425b 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/StringItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/StringItemRenderer.as
@@ -28,10 +28,11 @@ package org.apache.royale.html.supportClasses
     COMPILE::JS
     {
         import org.apache.royale.core.WrappedHTMLElement;
+    	import org.apache.royale.html.util.addElementToWrapper;
     }
     import org.apache.royale.events.Event;
     import org.apache.royale.html.beads.ITextItemRenderer;
-    import org.apache.royale.html.util.addElementToWrapper;
+	import org.apache.royale.core.DataItemRenderer; 
 
 	/**
 	 *  The StringItemRenderer class displays data in string form using the data's toString()
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/TreeGridControlItemRenderer.as b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/TreeGridControlItemRenderer.as
index 513801d..a5461fc 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/TreeGridControlItemRenderer.as
+++ b/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/TreeGridControlItemRenderer.as
@@ -25,6 +25,7 @@ package org.apache.royale.html.supportClasses
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.events.ItemAddedEvent;
 	import org.apache.royale.html.TextButton;
+	import org.apache.royale.core.UIItemRendererBase;
 
 	public class TreeGridControlItemRenderer extends UIItemRendererBase implements IItemRendererParent
 	{
diff --git a/frameworks/projects/Charts/src/main/resources/defaults.css b/frameworks/projects/Charts/src/main/resources/defaults.css
index 6d44227..005d359 100644
--- a/frameworks/projects/Charts/src/main/resources/defaults.css
+++ b/frameworks/projects/Charts/src/main/resources/defaults.css
@@ -30,17 +30,17 @@ BarChart
     IItemRenderer: ClassReference("org.apache.royale.charts.supportClasses.BoxItemRenderer");
     IHorizontalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
     IVerticalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
 }
 
 BoxItemRenderer
 {
-    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+    IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 }
 
 WedgeItemRenderer
 {
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 }
 
 ColumnChart
@@ -54,7 +54,7 @@ ColumnChart
     IItemRenderer: ClassReference("org.apache.royale.charts.supportClasses.BoxItemRenderer");
     IHorizontalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
     IVerticalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
 }
 
 LineChart
@@ -69,7 +69,7 @@ LineChart
     IConnectedItemRenderer: ClassReference("org.apache.royale.charts.supportClasses.LineSegmentItemRenderer");
     IHorizontalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
     IVerticalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
 }
 
 PieChart
@@ -81,7 +81,7 @@ PieChart
     IContentView: ClassReference("org.apache.royale.charts.supportClasses.ChartDataGroup");
     IDataProviderItemRendererMapper: ClassReference("org.apache.royale.charts.beads.DataItemRendererFactoryForSeriesData");
     IItemRenderer: ClassReference("org.apache.royale.charts.supportClasses.WedgeItemRenderer");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
 }
 
 StackedColumnChart
@@ -95,7 +95,7 @@ StackedColumnChart
     IItemRenderer: ClassReference("org.apache.royale.charts.supportClasses.BoxItemRenderer");
     IHorizontalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
     IVerticalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
 }
 
 StackedBarChart
@@ -109,5 +109,5 @@ StackedBarChart
     IItemRenderer: ClassReference("org.apache.royale.charts.supportClasses.BoxItemRenderer");
     IHorizontalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
     IVerticalAxisGroup: ClassReference("org.apache.royale.charts.supportClasses.ChartAxisGroup");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
 }
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartItemRendererFactory.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartItemRendererFactory.as
index 02b818f..79476e1 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartItemRendererFactory.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/ChartItemRendererFactory.as
@@ -29,7 +29,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 	
 	/**
 	 *  The ChartItemRendererFactory class implements IDataProviderItemRendererMapper
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataItemRendererFactoryForSeriesArrayListData.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataItemRendererFactoryForSeriesArrayListData.as
index 084461b..7a023d2 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataItemRendererFactoryForSeriesArrayListData.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataItemRendererFactoryForSeriesArrayListData.as
@@ -30,7 +30,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 	
 	/**
 	 *  The DataItemRendererFactoryForSeriesData creates the itemRenderers necessary for series-based
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataItemRendererFactoryForSeriesData.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataItemRendererFactoryForSeriesData.as
index 4c61e52..94fe54d 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataItemRendererFactoryForSeriesData.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataItemRendererFactoryForSeriesData.as
@@ -29,7 +29,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 	
 	/**
 	 *  The DataItemRendererFactoryForSeriesData creates the itemRenderers necessary for series-based
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataTipBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataTipBead.as
index ee703d8..8ed85f2 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataTipBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/DataTipBead.as
@@ -30,7 +30,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.events.utils.MouseUtils;
 	import org.apache.royale.geom.Point;
 	import org.apache.royale.html.accessories.ToolTipBead;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 	import org.apache.royale.utils.PointUtils;
 	
 	/**
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisBead.as
index c6eff69..adb0648 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalCategoryAxisBead.as
@@ -25,7 +25,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	
 	/**
 	 *  The HorizontalCategoryAxisBead displays a horizontal axis with
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisBead.as
index 6703dc5..6152a16 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/HorizontalLinearAxisBead.as
@@ -26,7 +26,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	
 	/**
 	 *  The HorizontalLinearAxisBead class provides a horizontal axis that uses a numeric
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisBead.as
index 426023b..d612359 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalCategoryAxisBead.as
@@ -26,7 +26,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	
 	/**
 	 *  The VerticalCategoryAxisBead displays a vertical axis with
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisBead.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisBead.as
index 0c7cc59..8c84c59 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisBead.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/VerticalLinearAxisBead.as
@@ -26,7 +26,7 @@ package org.apache.royale.charts.beads
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	
 	/**
 	 *  The VerticalLinearAxisBead class provides a vertical axis that uses a numeric
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/controllers/ChartSeriesMouseController.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/controllers/ChartSeriesMouseController.as
index 43107d4..f3c5129 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/controllers/ChartSeriesMouseController.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/controllers/ChartSeriesMouseController.as
@@ -29,7 +29,7 @@ package org.apache.royale.charts.beads.controllers
 	import org.apache.royale.events.ItemAddedEvent;
 	import org.apache.royale.events.ItemRemovedEvent;
 	import org.apache.royale.events.MouseEvent;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 
 	import org.apache.royale.events.ItemClickedEvent;
 
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/models/ChartArraySelectionModel.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/models/ChartArraySelectionModel.as
index 962862b..c42459e 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/models/ChartArraySelectionModel.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/beads/models/ChartArraySelectionModel.as
@@ -22,7 +22,7 @@ package org.apache.royale.charts.beads.models
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.EventDispatcher;
 	
-	import org.apache.royale.html.beads.models.ArraySelectionModel;
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	
 	import org.apache.royale.charts.core.IChartDataModel;
 	import org.apache.royale.charts.core.IChartSeries;
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGBoxItemRenderer.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGBoxItemRenderer.as
index 7d76304..114f5d6 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGBoxItemRenderer.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGBoxItemRenderer.as
@@ -25,7 +25,7 @@ package org.apache.royale.charts.optimized
 	import org.apache.royale.graphics.IStroke;
 	import org.apache.royale.graphics.SolidColor;
 	import org.apache.royale.graphics.SolidColorStroke;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.html.supportClasses.GraphicsItemRenderer;
 	
 	/**
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGChartDataGroup.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGChartDataGroup.as
index a68db5d..fde30ee 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGChartDataGroup.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGChartDataGroup.as
@@ -29,7 +29,7 @@ package org.apache.royale.charts.optimized
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.geom.Point;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.svg.CompoundGraphic;
 	
 	/**
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGLineSegmentItemRenderer.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGLineSegmentItemRenderer.as
index 54c8958..305bd9d 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGLineSegmentItemRenderer.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGLineSegmentItemRenderer.as
@@ -23,7 +23,7 @@ package org.apache.royale.charts.optimized
 	import org.apache.royale.graphics.IStroke;
 	import org.apache.royale.svg.Path;
 	import org.apache.royale.graphics.SolidColorStroke;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.charts.supportClasses.ILineSegmentItemRenderer;
 	
 	/**
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGWedgeItemRenderer.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGWedgeItemRenderer.as
index 1cf8257..2707e32 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGWedgeItemRenderer.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/optimized/SVGWedgeItemRenderer.as
@@ -23,7 +23,7 @@ package org.apache.royale.charts.optimized
 	import org.apache.royale.graphics.IFill;
 	import org.apache.royale.graphics.IStroke;
 	import org.apache.royale.svg.Path;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.charts.supportClasses.IWedgeItemRenderer;
 	
 	/**
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/BoxItemRenderer.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/BoxItemRenderer.as
index 7c37be5..1ef94e7 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/BoxItemRenderer.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/BoxItemRenderer.as
@@ -26,7 +26,7 @@ package org.apache.royale.charts.supportClasses
 	import org.apache.royale.svg.Rect;
 	import org.apache.royale.graphics.SolidColor;
 	import org.apache.royale.svg.LinearGradient;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	
 	/**
 	 *  The BoxItemRenderer displays a colored rectangular area suitable for use as
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/ChartDataGroup.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/ChartDataGroup.as
index f9cef89..f52800e 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/ChartDataGroup.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/ChartDataGroup.as
@@ -26,8 +26,8 @@ package org.apache.royale.charts.supportClasses
 	import org.apache.royale.core.IChild;
 	import org.apache.royale.core.IUIBase;
 	import org.apache.royale.core.UIBase;
-	import org.apache.royale.html.supportClasses.DataGroup;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.supportClasses.DataGroup;
+	import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.geom.Point;
 	
 	/**
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/LineSegmentItemRenderer.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/LineSegmentItemRenderer.as
index 7bb5bc3..f9430e5 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/LineSegmentItemRenderer.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/LineSegmentItemRenderer.as
@@ -21,7 +21,7 @@ package org.apache.royale.charts.supportClasses
 	import org.apache.royale.charts.core.IChartSeries;
 	import org.apache.royale.graphics.IStroke;
 	import org.apache.royale.svg.Path;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	
 	/**
 	 *  The LineSegmentItemRenderer class draws a line between the vertices of a LineSeries. 
diff --git a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/WedgeItemRenderer.as b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/WedgeItemRenderer.as
index f763c31..0fb159c 100644
--- a/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/WedgeItemRenderer.as
+++ b/frameworks/projects/Charts/src/main/royale/org/apache/royale/charts/supportClasses/WedgeItemRenderer.as
@@ -25,7 +25,7 @@ package org.apache.royale.charts.supportClasses
 	import org.apache.royale.svg.Path;
 	import org.apache.royale.graphics.SolidColor;
 	import org.apache.royale.svg.LinearGradient;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	
 	/**
 	 *  The WedgeItemRenderer draws a single slide of a PieSeries. 
diff --git a/frameworks/projects/Core/src/main/resources/basic-manifest.xml b/frameworks/projects/Core/src/main/resources/basic-manifest.xml
index 5556ce8..e451866 100644
--- a/frameworks/projects/Core/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/Core/src/main/resources/basic-manifest.xml
@@ -50,5 +50,18 @@
     
     <component id="StyleChangeNotifier" class="org.apache.royale.core.StyleChangeNotifier"/>
     
+    <component id="DataItemRenderer" class="org.apache.royale.core.DataItemRenderer"/>
+    <component id="MXMLItemRenderer" class="org.apache.royale.core.MXMLItemRenderer"/>
+
+    <component id="MXMLBeadView" class="org.apache.royale.core.MXMLBeadView"/>
+    <component id="LayoutChangeNotifier" class="org.apache.royale.core.beads.layouts.LayoutChangeNotifier"/>
+
+    <component id="Container" class="org.apache.royale.core.Container"/>
+    <component id="Viewport" class="org.apache.royale.core.supportClasses.Viewport" />
+    <component id="Border" class="org.apache.royale.core.supportClasses.Border"/>
+
+    <component id="ArraySelectionModel" class="org.apache.royale.core.beads.models.ArraySelectionModel" />
+    <component id="View" class="org.apache.royale.core.View"/>
+    
     <component id="State" class="org.apache.royale.states.State"/>
 </componentPackage>
diff --git a/frameworks/projects/Core/src/main/royale/CoreClasses.as b/frameworks/projects/Core/src/main/royale/CoreClasses.as
index d189481..9900de4 100644
--- a/frameworks/projects/Core/src/main/royale/CoreClasses.as
+++ b/frameworks/projects/Core/src/main/royale/CoreClasses.as
@@ -27,16 +27,54 @@ package {
 internal class CoreClasses
 {
 	import org.apache.royale.core.UIBase; UIBase;
+	import org.apache.royale.core.LayoutBase; LayoutBase;
+	import org.apache.royale.core.GroupBase; GroupBase;
+	import org.apache.royale.core.ContainerBase; ContainerBase;
+	import org.apache.royale.core.ContainerBaseStrandChildren; ContainerBaseStrandChildren;
+	import org.apache.royale.core.ApplicationBase; ApplicationBase;
+	import org.apache.royale.core.DataContainerBase; DataContainerBase;
+	import org.apache.royale.core.UIItemRendererBase; UIItemRendererBase;
+	import org.apache.royale.core.DataItemRenderer; DataItemRenderer;
+	import org.apache.royale.core.MXMLItemRenderer; MXMLItemRenderer;
+	import org.apache.royale.core.IList; IList;
+	import org.apache.royale.core.IListView; IListView;
+	import org.apache.royale.events.ItemAddedEvent; ItemAddedEvent;
+	import org.apache.royale.events.ItemRemovedEvent; ItemRemovedEvent;
+	import org.apache.royale.core.beads.IDropDownListView; IDropDownListView;
+
+	import org.apache.royale.core.beads.controllers.ItemRendererMouseController; ItemRendererMouseController;
+
+	import org.apache.royale.events.ItemAddedEvent; ItemAddedEvent;
+	import org.apache.royale.events.ItemClickedEvent; ItemClickedEvent;
+	import org.apache.royale.events.ItemRemovedEvent; ItemRemovedEvent;
+	import org.apache.royale.events.ItemRendererEvent; ItemRendererEvent;
+
+    import org.apache.royale.core.MXMLBeadView; MXMLBeadView;
+    import org.apache.royale.core.beads.GroupView; GroupView;
+	import org.apache.royale.core.beads.views.ContainerView; ContainerView;
+	import org.apache.royale.core.beads.views.DataContainerView; DataContainerView;
+	import org.apache.royale.core.beads.IBackgroundBead; IBackgroundBead;
+	import org.apache.royale.core.beads.IBorderBead; IBorderBead;
+
+	import org.apache.royale.core.supportClasses.DataGroup; DataGroup;
+	import org.apache.royale.core.supportClasses.Viewport; Viewport;
+
+	import org.apache.royale.core.beads.models.ViewportModel; ViewportModel;
+
     import org.apache.royale.core.BeadViewBase; BeadViewBase;
     import org.apache.royale.core.ImageViewBase; ImageViewBase;
     import org.apache.royale.core.BrowserWindow; BrowserWindow;
 	COMPILE::SWF
 	{
+		import org.apache.royale.core.UIButtonBase; UIButtonBase;
+		import org.apache.royale.core.supportClasses.ContainerContentArea; ContainerContentArea;
+		import org.apache.royale.core.CSSTextField; CSSTextField;
+		import org.apache.royale.core.beads.ITextFieldView; ITextFieldView;
+		import org.apache.royale.core.beads.TextFieldViewBase; TextFieldViewBase;
 		// import Promise; Promise;
 		import org.apache.royale.core.ApplicationFactory; ApplicationFactory;
 		import org.apache.royale.core.CSSShape; CSSShape;
 		import org.apache.royale.core.CSSSprite; CSSSprite;
-		import org.apache.royale.core.CSSTextField; CSSTextField;
 	    import org.apache.royale.core.StyleableCSSTextField; StyleableCSSTextField;
 		import org.apache.royale.core.WrappedMovieClip; WrappedMovieClip;
 		import org.apache.royale.core.WrappedShape; WrappedShape;
@@ -114,6 +152,10 @@ internal class CoreClasses
 	import org.apache.royale.core.IViewport; IViewport;
     import org.apache.royale.core.IScrollingViewport; IScrollingViewport;
 	import org.apache.royale.core.IViewportModel; IViewportModel;
+
+	import org.apache.royale.core.IApplicationView; IApplicationView;
+	import org.apache.royale.core.beads.models.ArraySelectionModel; ArraySelectionModel;
+
 	COMPILE::SWF
 	{
 		import org.apache.royale.core.IViewportScroller; IViewportScroller;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ApplicationBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/ApplicationBase.as
similarity index 100%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ApplicationBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/ApplicationBase.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/View.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/Container.as
similarity index 61%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/View.as
copy to frameworks/projects/Core/src/main/royale/org/apache/royale/core/Container.as
index 88632e0..e196115 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/View.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/Container.as
@@ -17,7 +17,7 @@
 //
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.core
-{    	
+{
 	import org.apache.royale.core.IMXMLDocument;
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
@@ -28,21 +28,60 @@ package org.apache.royale.core
 	 * definition in an MXML file.
 	 */
 	[DefaultProperty("mxmlContent")]
+
 	
     /**
-     *  The View class is the class for most views in a Royale
-     *  application.  It is generally used as the root tag of MXML
-     *  documents and UI controls and containers are added to it.
+     *  The Container class implements a basic container for
+     *  other controls and containers.  The position and size
+     *  of the children are determined by a layout while the size of
+     *  a Container can either be determined by its children or by
+     *  specifying an exact size in pixels or as a percentage of the
+     *  parent element.
+     *
+     *  This Container does not have a built-in scroll bar or clipping of
+     *  its content should the content exceed the Container's boundaries. To
+     *  have scroll bars and clipping, add the ScrollingView bead.  
+     * 
+     *  While the container is relatively lightweight, it should
+     *  generally not be used as the base class for other controls,
+     *  even if those controls are composed of children.  That's
+     *  because the fundamental API of Container is to support
+     *  an arbitrary set of children, and most controls only
+     *  support a specific set of children.
+     * 
+     *  And that's one of the advantages of beads: that functionality
+     *  used in a Container can also be used in a Control as long
+     *  as that bead doesn't assume that its strand is a Container.
+     * 
+     *  For example, even though you can use a Panel to create the
+     *  equivalent of an Alert control, the Alert is a 
+     *  control and not a Container because the Alert does not
+     *  support an arbitrary set of children.
      *  
+     *  @toplevel
+     *  @see org.apache.royale.html.beads.layout
+     *  @see org.apache.royale.html.supportClasses.ScrollingViewport
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.0
-     */
-	public class View extends ViewBase implements IMXMLDocument
-	{		
-		public function View()
+     */    
+	public class Container extends ContainerBase implements IMXMLDocument
+	{
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.0
+         */
+		public function Container()
 		{
+			COMPILE::JS
+			{
+				typeNames = 'Container';
+			}
 			super();
 		}
 		
@@ -71,7 +110,7 @@ package org.apache.royale.core
 				dispatchEvent(new Event("initComplete"));
 				_initialized = true;
 				
-				// - why was this added here? childrenAdded(); //?? Is this necessary since MXMLDataInterpreter will already have called it
+				//?? why is this here? childrenAdded(); //?? Is this needed since MXMLDataInterpreter will have already called it
 			}
 		}
 		
@@ -121,5 +160,5 @@ package org.apache.royale.core
          *  @royalesuppresspublicvarwarning
 		 */
 		public var mxmlContent:Array;
-    }
+	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ContainerBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/ContainerBase.as
similarity index 100%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ContainerBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/ContainerBase.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ContainerBaseStrandChildren.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/ContainerBaseStrandChildren.as
similarity index 100%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ContainerBaseStrandChildren.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/ContainerBaseStrandChildren.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/DataContainerBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/DataContainerBase.as
similarity index 98%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/DataContainerBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/DataContainerBase.as
index c2ee3a6..f7ae26f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/DataContainerBase.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/DataContainerBase.as
@@ -19,11 +19,11 @@
 package org.apache.royale.core
 {
 	import org.apache.royale.core.ValuesManager;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.ItemAddedEvent;
 	import org.apache.royale.events.ItemRemovedEvent;
-	import org.apache.royale.html.supportClasses.DataItemRenderer;
+	import org.apache.royale.core.DataItemRenderer;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
 	
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DataItemRenderer.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/DataItemRenderer.as
similarity index 97%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DataItemRenderer.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/DataItemRenderer.as
index 356a3ae..dc47ba9 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DataItemRenderer.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/DataItemRenderer.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.core
 {
 	COMPILE::SWF
 	{
@@ -26,7 +26,7 @@ package org.apache.royale.html.supportClasses
 	{
 		import org.apache.royale.core.WrappedHTMLElement;
         import org.apache.royale.html.util.addElementToWrapper;
-		import org.apache.royale.html.beads.controllers.ItemRendererMouseController;
+		import org.apache.royale.core.beads.controllers.ItemRendererMouseController;
 	}
 	import org.apache.royale.core.ValuesManager;
 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/GroupBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/GroupBase.as
similarity index 100%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/GroupBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/GroupBase.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/IList.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/IList.as
similarity index 100%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/IList.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/IList.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IListView.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/IListView.as
similarity index 97%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IListView.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/IListView.as
index 4d70538..a9a5e37 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IListView.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/IListView.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core
 {	
 	import org.apache.royale.core.IBeadView;
 	import org.apache.royale.core.IItemRendererParent;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/LayoutBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/LayoutBase.as
similarity index 99%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/LayoutBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/LayoutBase.as
index d38fedf..2126202 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/LayoutBase.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/LayoutBase.as
@@ -18,7 +18,6 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.core
 {
-
 	import org.apache.royale.core.IBeadLayout;
 	import org.apache.royale.core.IBorderPaddingMarginValuesImpl;
 	import org.apache.royale.core.ILayoutChild;
@@ -27,7 +26,6 @@ package org.apache.royale.core
 	import org.apache.royale.core.ILayoutView;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IUIBase;
-	import org.apache.royale.core.LayoutManager;
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.core.layout.EdgeData;
 	import org.apache.royale.core.layout.MarginData;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/MXMLBeadView.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/MXMLBeadView.as
similarity index 98%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/MXMLBeadView.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/MXMLBeadView.as
index 84adf72..8e44302 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/MXMLBeadView.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/MXMLBeadView.as
@@ -16,18 +16,17 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html
+package org.apache.royale.core
 {
 	import org.apache.royale.states.State;
 
 	import org.apache.royale.core.IBead;
     import org.apache.royale.core.ILayoutHost;
     import org.apache.royale.core.IParent;
-	import org.apache.royale.core.IParentIUIBase;
 	import org.apache.royale.core.IStrand;
     import org.apache.royale.core.IStatesImpl;
 	import org.apache.royale.core.ValuesManager;
-    import org.apache.royale.html.beads.GroupView;
+    import org.apache.royale.core.beads.GroupView;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.ValueChangeEvent;
 	import org.apache.royale.utils.MXMLDataInterpreter;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MXMLItemRenderer.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/MXMLItemRenderer.as
similarity index 98%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MXMLItemRenderer.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/MXMLItemRenderer.as
index d4748f3..2e33d88 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/MXMLItemRenderer.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/MXMLItemRenderer.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.core
 {
 	import org.apache.royale.core.ILayoutHost;
 	import org.apache.royale.core.ILayoutParent;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/UIButtonBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/UIButtonBase.as
similarity index 100%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/UIButtonBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/UIButtonBase.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/UIItemRendererBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/UIItemRendererBase.as
similarity index 99%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/UIItemRendererBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/UIItemRendererBase.as
index 291596a..53fd43f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/UIItemRendererBase.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/UIItemRendererBase.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.core
 {
 	import org.apache.royale.core.ISelectableItemRenderer;
 	import org.apache.royale.core.UIBase;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/View.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/View.as
similarity index 100%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/View.as
copy to frameworks/projects/Core/src/main/royale/org/apache/royale/core/View.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ViewBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/ViewBase.as
similarity index 100%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/ViewBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/ViewBase.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/GroupView.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/GroupView.as
similarity index 99%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/GroupView.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/GroupView.as
index ea47e0d..26588b1 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/GroupView.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/GroupView.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core.beads
 {
 	import org.apache.royale.core.BeadViewBase;
 	import org.apache.royale.core.IBead;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IBackgroundBead.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IBackgroundBead.as
similarity index 97%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IBackgroundBead.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IBackgroundBead.as
index aace652..d4be7d8 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IBackgroundBead.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IBackgroundBead.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core.beads
 {
 	import org.apache.royale.core.IBead;
 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IBorderBead.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IBorderBead.as
similarity index 89%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IBorderBead.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IBorderBead.as
index 7935bcf..b2b4639 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IBorderBead.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IBorderBead.as
@@ -16,13 +16,13 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core.beads
 {
 	import org.apache.royale.core.IBead;
 
     /**
-     *  The IBackgroundBead interface is a marker interface for beads
-     *  that draw backgrounds.
+     *  The IBorderBead interface is a marker interface for beads
+     *  that draw borders.
      * 
      *  @langversion 3.0
      *  @playerversion Flash 10.2
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IDropDownListView.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IDropDownListView.as
similarity index 98%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IDropDownListView.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IDropDownListView.as
index 9222dc6..599abbd 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/IDropDownListView.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/IDropDownListView.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core.beads
 {
     import org.apache.royale.core.IBeadView;
     import org.apache.royale.core.IStrand;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ITextFieldView.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/ITextFieldView.as
similarity index 92%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ITextFieldView.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/ITextFieldView.as
index 9f08336..89e42fe 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ITextFieldView.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/ITextFieldView.as
@@ -16,9 +16,12 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core.beads
 {
-	import org.apache.royale.core.CSSTextField;
+    COMPILE::SWF
+    {
+        import org.apache.royale.core.CSSTextField;
+    }
 
     /**
      *  The ITextFieldView interface is the interface for views for
@@ -29,6 +32,7 @@ package org.apache.royale.html.beads
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.0
      */
+    COMPILE::SWF
 	public interface ITextFieldView
 	{
         /**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldViewBase.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/TextFieldViewBase.as
similarity index 99%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldViewBase.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/TextFieldViewBase.as
index bfbe960..e28cae9 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TextFieldViewBase.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/TextFieldViewBase.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core.beads
 {
 	import flash.display.DisplayObject;
 	import flash.display.DisplayObjectContainer;
@@ -44,6 +44,7 @@ package org.apache.royale.html.beads
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.0
      */
+    COMPILE::SWF
 	public class TextFieldViewBase implements IBeadView, ITextFieldView
 	{
         /**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ItemRendererMouseController.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/controllers/ItemRendererMouseController.as
similarity index 99%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ItemRendererMouseController.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/controllers/ItemRendererMouseController.as
index c9c53e5..d019a9d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ItemRendererMouseController.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/controllers/ItemRendererMouseController.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.controllers
+package org.apache.royale.core.beads.controllers
 {
 	import org.apache.royale.core.IBeadController;
 	import org.apache.royale.core.ISelectableItemRenderer;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/LayoutChangeNotifier.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/layouts/LayoutChangeNotifier.as
similarity index 98%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/LayoutChangeNotifier.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/layouts/LayoutChangeNotifier.as
index bc5d3ae..00d6607 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/layouts/LayoutChangeNotifier.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/layouts/LayoutChangeNotifier.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.layouts
+package org.apache.royale.core.beads.layouts
 {	
 	import org.apache.royale.core.IBead;
     import org.apache.royale.core.IBeadView;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ArraySelectionModel.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/models/ArraySelectionModel.as
similarity index 99%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ArraySelectionModel.as
copy to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/models/ArraySelectionModel.as
index ad5a1f6..1693346 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ArraySelectionModel.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/models/ArraySelectionModel.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.models
+package org.apache.royale.core.beads.models
 {
 	import org.apache.royale.core.IRollOverModel;
 	import org.apache.royale.core.ISelectionModel;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ViewportModel.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/models/ViewportModel.as
similarity index 98%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ViewportModel.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/models/ViewportModel.as
index 33c4d89..ad0876d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ViewportModel.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/models/ViewportModel.as
@@ -16,14 +16,14 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.models
+package org.apache.royale.core.beads.models
 {
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IUIBase;
 	import org.apache.royale.core.IViewportModel;
+	import org.apache.royale.core.layout.EdgeData;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.EventDispatcher;
-	import org.apache.royale.core.layout.EdgeData;
 	
     /**
      * @copy org.apache.royale.core.IViewportModel
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ContainerView.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/views/ContainerView.as
similarity index 93%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ContainerView.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/views/ContainerView.as
index f72ebd9..d444432 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/ContainerView.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/views/ContainerView.as
@@ -16,23 +16,16 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core.beads.views
 {
-	import org.apache.royale.core.BeadViewBase;
+	import org.apache.royale.core.beads.GroupView;
 	import org.apache.royale.core.ContainerBase;
 	import org.apache.royale.core.IBead;
-	import org.apache.royale.core.IBeadLayout;
-	import org.apache.royale.core.IBeadView;
     import org.apache.royale.core.IBorderPaddingMarginValuesImpl;
-	import org.apache.royale.core.IChild;
 	import org.apache.royale.core.IContainer;
-	import org.apache.royale.core.IContainerView;
-	import org.apache.royale.core.IContentViewHost;
 	import org.apache.royale.core.ILayoutChild;
-	import org.apache.royale.core.ILayoutHost;
 	import org.apache.royale.core.ILayoutView;
 	import org.apache.royale.core.IParent;
-	import org.apache.royale.core.IParentIUIBase;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IUIBase;
 	import org.apache.royale.core.IViewport;
@@ -41,14 +34,11 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
-	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.geom.Rectangle;
 	import org.apache.royale.geom.Size;
-	import org.apache.royale.html.Container;
-	import org.apache.royale.html.beads.models.ViewportModel;
-	import org.apache.royale.html.supportClasses.Border;
-	import org.apache.royale.html.supportClasses.ContainerContentArea;
-	import org.apache.royale.html.supportClasses.Viewport;
+	import org.apache.royale.core.Container;
+	import org.apache.royale.core.beads.models.ViewportModel;
+	import org.apache.royale.core.supportClasses.Border;
+	import org.apache.royale.core.supportClasses.Viewport;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
 
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataContainerView.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/views/DataContainerView.as
similarity index 89%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataContainerView.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/views/DataContainerView.as
index fc4ba3b..76f020c 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataContainerView.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/beads/views/DataContainerView.as
@@ -16,32 +16,21 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.core.beads.views
 {	
-	import org.apache.royale.core.BeadViewBase;
-	import org.apache.royale.core.ContainerBase;
 	import org.apache.royale.core.IBead;
-	import org.apache.royale.core.IBeadLayout;
-	import org.apache.royale.core.IBeadModel;
-	import org.apache.royale.core.IBeadView;
 	import org.apache.royale.core.IDataProviderModel;
 	import org.apache.royale.core.IItemRenderer;
 	import org.apache.royale.core.IItemRendererParent;
 	import org.apache.royale.core.IList;
 	import org.apache.royale.core.IParent;
-	import org.apache.royale.core.IParentIUIBase;
-	import org.apache.royale.core.ISelectableItemRenderer;
-	import org.apache.royale.core.ISelectionModel;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IUIBase;
-	import org.apache.royale.core.LayoutBase;
 	import org.apache.royale.core.Strand;
 	import org.apache.royale.core.UIBase;
-	import org.apache.royale.core.ValuesManager;
+	import org.apache.royale.core.supportClasses.DataGroup;
+	import org.apache.royale.core.IListView;
 	import org.apache.royale.events.Event;
-	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.supportClasses.Border;
-	import org.apache.royale.html.supportClasses.DataGroup;
 
 	/**
 	 *  The DataContainerView provides the visual elements for the DataContainer.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/Border.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/Border.as
similarity index 97%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/Border.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/Border.as
index 1bdce83..9ef021f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/Border.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/Border.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.core.supportClasses
 {
 	import org.apache.royale.core.UIBase;
 	
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ContainerContentArea.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/ContainerContentArea.as
similarity index 97%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ContainerContentArea.as
copy to frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/ContainerContentArea.as
index 7dcb4f2..1d934b7 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ContainerContentArea.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/ContainerContentArea.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.core.supportClasses
 {
 	import org.apache.royale.core.IBead;
 	import org.apache.royale.core.IStrand;
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DataGroup.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/DataGroup.as
similarity index 93%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DataGroup.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/DataGroup.as
index c0f44bc..878955d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/DataGroup.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/DataGroup.as
@@ -16,21 +16,16 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.core.supportClasses
 {	
     import org.apache.royale.core.IChild;
-    import org.apache.royale.core.IContentView;
     import org.apache.royale.core.IItemRenderer;
     import org.apache.royale.core.IItemRendererParent;
-	import org.apache.royale.core.IRollOverModel;
-	import org.apache.royale.core.ISelectionModel;
-	import org.apache.royale.core.IStrand;
-    import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.ItemAddedEvent;
-	import org.apache.royale.events.ItemClickedEvent;
 	import org.apache.royale.events.ItemRemovedEvent;
+	import org.apache.royale.core.DataItemRenderer;
 
     /**
      *  The DataGroup class is the IItemRendererParent used internally
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/Viewport.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/Viewport.as
similarity index 95%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/Viewport.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/Viewport.as
index 10019ae..eaa601a 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/Viewport.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/core/supportClasses/Viewport.as
@@ -16,15 +16,13 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.core.supportClasses
 {
 	import org.apache.royale.core.IBead;
 	import org.apache.royale.core.IContentView;
-	import org.apache.royale.core.IParentIUIBase;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IUIBase;
 	import org.apache.royale.core.IViewport;
-	import org.apache.royale.core.IViewportModel;
 	import org.apache.royale.core.UIBase;
     import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
@@ -35,7 +33,6 @@ package org.apache.royale.html.supportClasses
 	COMPILE::SWF
 	{
 		import flash.geom.Rectangle;
-		import org.apache.royale.html.beads.models.ScrollBarModel;
 	}
 
     /**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemAddedEvent.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemAddedEvent.as
similarity index 99%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemAddedEvent.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemAddedEvent.as
index 2a5ff5e..7062bcd 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemAddedEvent.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemAddedEvent.as
@@ -1,6 +1,5 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-
 //  Licensed to the Apache Software Foundation (ASF) under one or more
 //  contributor license agreements.  See the NOTICE file distributed with
 //  this work for additional information regarding copyright ownership.
@@ -19,7 +18,6 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.events
 {
-
 	import org.apache.royale.events.CustomEvent;
 	
 	/**
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemClickedEvent.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemClickedEvent.as
similarity index 100%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemClickedEvent.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemClickedEvent.as
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemRemovedEvent.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemRemovedEvent.as
similarity index 99%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemRemovedEvent.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemRemovedEvent.as
index 90c5720..4949ca8 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemRemovedEvent.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemRemovedEvent.as
@@ -1,6 +1,5 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-
 //  Licensed to the Apache Software Foundation (ASF) under one or more
 //  contributor license agreements.  See the NOTICE file distributed with
 //  this work for additional information regarding copyright ownership.
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemRendererEvent.as b/frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemRendererEvent.as
similarity index 99%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemRendererEvent.as
rename to frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemRendererEvent.as
index f0af3c8..f2dcf2f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/events/ItemRendererEvent.as
+++ b/frameworks/projects/Core/src/main/royale/org/apache/royale/events/ItemRendererEvent.as
@@ -89,4 +89,4 @@ package org.apache.royale.events
 			return newEvent;
 		}
 	}
-}
+}
\ No newline at end of file
diff --git a/frameworks/projects/Effects/src/main/royale/org/apache/royale/effects/beads/EasyAccordionCollapseBead.as b/frameworks/projects/Effects/src/main/royale/org/apache/royale/effects/beads/EasyAccordionCollapseBead.as
index 87fbf4c..9da70ad 100644
--- a/frameworks/projects/Effects/src/main/royale/org/apache/royale/effects/beads/EasyAccordionCollapseBead.as
+++ b/frameworks/projects/Effects/src/main/royale/org/apache/royale/effects/beads/EasyAccordionCollapseBead.as
@@ -24,7 +24,7 @@ package org.apache.royale.effects.beads
 	import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.html.beads.AccordionCollapseBead;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 	import org.apache.royale.html.supportClasses.ICollapsible;
 	import org.apache.royale.utils.AbsoluteLayoutTweener;
 	
diff --git a/frameworks/projects/Express/src/main/resources/defaults.css b/frameworks/projects/Express/src/main/resources/defaults.css
index a0e3ae1..c565e55 100644
--- a/frameworks/projects/Express/src/main/resources/defaults.css
+++ b/frameworks/projects/Express/src/main/resources/defaults.css
@@ -60,8 +60,8 @@ DataGrid
 	IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	border-style: none;
 	background-color: #FFFFFF;
 }
@@ -75,8 +75,8 @@ Container
 {	
 	IBeadView: ClassReference("org.apache.royale.html.beads.ContainerView");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.BasicLayout");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	
 	background-color: #FFFFFF;
 }
@@ -116,7 +116,7 @@ TextInput
 
 View
 {
-	IBeadView: ClassReference("org.apache.royale.html.beads.GroupView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.GroupView");
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.BasicLayout");
 }
 
diff --git a/frameworks/projects/Express/src/main/royale/org/apache/royale/express/List.as b/frameworks/projects/Express/src/main/royale/org/apache/royale/express/List.as
index 9a1b004..0818b8e 100644
--- a/frameworks/projects/Express/src/main/royale/org/apache/royale/express/List.as
+++ b/frameworks/projects/Express/src/main/royale/org/apache/royale/express/List.as
@@ -22,10 +22,10 @@ package org.apache.royale.express
 	import org.apache.royale.core.IBead;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.html.List;
+	import org.apache.royale.core.beads.models.ArraySelectionModel;
 	import org.apache.royale.html.beads.DataItemRendererFactoryForArrayData;
 	import org.apache.royale.html.beads.DataItemRendererFactoryForArrayList;
 	import org.apache.royale.html.beads.models.ArrayListSelectionModel;
-	import org.apache.royale.html.beads.models.ArraySelectionModel;
 	import org.apache.royale.html.beads.SingleSelectionDragSourceBead;
 	import org.apache.royale.html.beads.SingleSelectionDragImageBead;
 	import org.apache.royale.html.beads.SingleSelectionDropTargetBead;
diff --git a/frameworks/projects/Express/src/main/royale/org/apache/royale/express/MXMLItemRenderer.as b/frameworks/projects/Express/src/main/royale/org/apache/royale/express/MXMLItemRenderer.as
index e00c05b..1bd18e9 100644
--- a/frameworks/projects/Express/src/main/royale/org/apache/royale/express/MXMLItemRenderer.as
+++ b/frameworks/projects/Express/src/main/royale/org/apache/royale/express/MXMLItemRenderer.as
@@ -19,13 +19,13 @@
 package org.apache.royale.express
 {
 	import org.apache.royale.binding.ItemRendererDataBinding;
-	import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+	import org.apache.royale.core.MXMLItemRenderer;
 	
 	/**
 	 * This class extends MXMLItemRenderer and adds ItemRendererDataBinding
 	 * for convenience.
 	 */
-	public class MXMLItemRenderer extends org.apache.royale.html.supportClasses.MXMLItemRenderer
+	public class MXMLItemRenderer extends org.apache.royale.core.MXMLItemRenderer
 	{
 		public function MXMLItemRenderer()
 		{
diff --git a/frameworks/projects/Flat/src/main/resources/defaults.css b/frameworks/projects/Flat/src/main/resources/defaults.css
index 4fcb226..dacfe6e 100644
--- a/frameworks/projects/Flat/src/main/resources/defaults.css
+++ b/frameworks/projects/Flat/src/main/resources/defaults.css
@@ -75,11 +75,11 @@ Button:active
 
 ButtonBar
 {
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
     IBeadView:  ClassReference("org.apache.royale.html.beads.ButtonBarView");			
     IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
     IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.ButtonBarLayout");
-    IDataGroup: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+    IDataGroup: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
     IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.TextItemRendererFactoryForArrayData");
     IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
     IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.ButtonBarButtonItemRenderer");
@@ -174,8 +174,8 @@ Container
 {
     IBeadView: ClassReference("org.apache.royale.html.beads.ContainerView");
     IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.BasicLayout");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 }
 
 ControlBar
@@ -192,13 +192,13 @@ ControlBar
 DataContainer
 {
 	IBeadModel: ClassReference("org.apache.royale.html.beads.models.DataProviderModel");
-	IBeadView:  ClassReference("org.apache.royale.html.beads.DataContainerView");			
+	IBeadView:  ClassReference("org.apache.royale.core.beads.views.DataContainerView");			
 	IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
 	IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
-	IViewport: ClassReference("org.apache.royale.html.supportClasses.Viewport");
-	IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
+	IViewport: ClassReference("org.apache.royale.core.supportClasses.Viewport");
+	IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
 	border-style: solid;
 	border-color: #222222;
 }
@@ -333,11 +333,11 @@ VContainer
 
 List
 {
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
     IBeadView:  ClassReference("org.apache.royale.html.beads.ListView");			
     IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
     IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
-    IDataGroup: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+    IDataGroup: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
     IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
     IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
     IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
@@ -451,11 +451,11 @@ RadioButton
 
 SimpleList
 {
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
     IBeadView:  ClassReference("org.apache.royale.html.beads.ListView");
     IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
     IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
-    IDataGroup: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+    IDataGroup: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
     IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.TextItemRendererFactoryForArrayData");
     IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
     IItemRenderer: ClassReference("org.apache.royale.html.supportClasses.StringItemRenderer");
@@ -464,7 +464,7 @@ SimpleList
 
 StringItemRenderer
 {
-    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+    IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
     height: 16;
 }
 
@@ -514,7 +514,7 @@ ToolTip
 
 View
 {
-	IBeadView: ClassReference("org.apache.royale.html.beads.GroupView");
+	IBeadView: ClassReference("org.apache.royale.core.beads.GroupView");
     IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.BasicLayout");
 }
 
@@ -595,12 +595,12 @@ ControlBar
 DataContainer {
 	IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
 	IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-	IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+	IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
 }
 
 DropDownList
 {
-	IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+	IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
 	IBeadView: ClassReference("org.apache.royale.flat.beads.DropDownListView");
 	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.DropDownListController");
 	IPopUp: ClassReference("org.apache.royale.flat.supportClasses.DropDownListList");
@@ -608,7 +608,7 @@ DropDownList
 
 DropDownListList
 {
-	IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+	IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
 	IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.TextItemRendererFactoryForArrayData");
 	IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
 	IItemRenderer: ClassReference("org.apache.royale.flat.supportClasses.DropDownListStringItemRenderer");
@@ -833,7 +833,7 @@ TextButton
 
 TextFieldItemRenderer
 {
-    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+    IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
     height: 16;
 }
 
diff --git a/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/DropDownList.as b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/DropDownList.as
index 72ee499..0d554aa 100644
--- a/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/DropDownList.as
+++ b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/DropDownList.as
@@ -32,7 +32,7 @@ package org.apache.royale.flat
         import org.apache.royale.core.WrappedHTMLElement;
         import org.apache.royale.core.ISelectionModel;
         import org.apache.royale.events.Event;
-        import org.apache.royale.html.beads.models.ArraySelectionModel;
+        import org.apache.royale.core.beads.models.ArraySelectionModel;
         import org.apache.royale.utils.CSSUtils;
     }
     
diff --git a/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/DropDownListView.as b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/DropDownListView.as
index d970d28..bc171ac 100644
--- a/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/DropDownListView.as
+++ b/frameworks/projects/Flat/src/main/royale/org/apache/royale/flat/beads/DropDownListView.as
@@ -41,7 +41,7 @@ package org.apache.royale.flat.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.html.Button;
-	import org.apache.royale.html.beads.IDropDownListView;
+	import org.apache.royale.core.beads.IDropDownListView;
 	import org.apache.royale.utils.CSSUtils;
     import org.apache.royale.utils.UIUtils;
     
diff --git a/frameworks/projects/HTML/pom.xml b/frameworks/projects/HTML/pom.xml
index d829f5e..b729605 100644
--- a/frameworks/projects/HTML/pom.xml
+++ b/frameworks/projects/HTML/pom.xml
@@ -124,20 +124,7 @@
       <type>swc</type>
       <classifier>js</classifier>
     </dependency>
-    <dependency>
-      <groupId>org.apache.royale.framework</groupId>
-      <artifactId>Basic</artifactId>
-      <version>0.9.3-SNAPSHOT</version>
-      <type>swc</type>
-      <classifier>swf</classifier>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.royale.framework</groupId>
-      <artifactId>Basic</artifactId>
-      <version>0.9.3-SNAPSHOT</version>
-      <type>swc</type>
-      <classifier>js</classifier>
-    </dependency>
+    
   </dependencies>
 
 </project>
diff --git a/frameworks/projects/HTML/src/main/royale/org/apache/royale/html/NodeElementBase.as b/frameworks/projects/HTML/src/main/royale/org/apache/royale/html/NodeElementBase.as
index a48a797..dd88b38 100644
--- a/frameworks/projects/HTML/src/main/royale/org/apache/royale/html/NodeElementBase.as
+++ b/frameworks/projects/HTML/src/main/royale/org/apache/royale/html/NodeElementBase.as
@@ -20,7 +20,7 @@ package org.apache.royale.html
 {
     import org.apache.royale.core.UIBase;
 
-    public class NodeElementBase extends Group
+    public class NodeElementBase extends UIBase
     {
         public function NodeElementBase()
         {
diff --git a/frameworks/projects/Jewel/src/main/resources/defaults.css b/frameworks/projects/Jewel/src/main/resources/defaults.css
index 57a6091..f7e9f5b 100644
--- a/frameworks/projects/Jewel/src/main/resources/defaults.css
+++ b/frameworks/projects/Jewel/src/main/resources/defaults.css
@@ -87,20 +87,13 @@
 }
 
 j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
+  IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.AlertModel");
   IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
   IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
 }
 
 @media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
-@media -royale-swf {
   j|CheckBox {
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ToggleButtonModel");
     IBeadView: ClassReference("org.apache.royale.jewel.beads.views.CheckBoxView");
   }
 }
@@ -111,27 +104,30 @@ j|Alert {
 }
 
 j|ControlBar {
-  IBeadView: ClassReference("org.apache.royale.html.beads.GroupView");
+  IBeadView: ClassReference("org.apache.royale.core.beads.GroupView");
   IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.HorizontalLayout");
 }
 
 @media -royale-swf {
   j|ControlBar {
     IMeasurementBead: ClassReference("org.apache.royale.html.beads.ControlBarMeasurementBead");
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
   }
 }
 @media -royale-swf {
   j|DropDownList {
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
     IBeadView: ClassReference("org.apache.royale.jewel.beads.views.DropDownListView");
-    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.DropDownListController");
-    IPopUp: ClassReference("org.apache.royale.html.supportClasses.DropDownListList");
+    IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.DropDownListController");
+    IPopUp: ClassReference("org.apache.royale.jewel.supportClasses.DropDownListList");
+  }
+
+  j|DropDownListList {
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
+    IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
   }
 }
 j|ListItemRenderer {
-  IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+  IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 }
 
 .jewel.label {
@@ -139,32 +135,28 @@ j|ListItemRenderer {
 }
 
 j|Label {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.TextModel");
+  IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.TextModel");
 }
 
 j|List {
   IBeadView: ClassReference("org.apache.royale.jewel.beads.views.ListView");
-  IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
-  IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout");
+  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.ListSingleSelectionMouseController");
+  IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.VerticalLayout");
   IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
   IItemRenderer: ClassReference("org.apache.royale.jewel.itemRenderers.ListItemRenderer");
-  IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport");
-  IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel");
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.SingleSelectionCollectionViewModel");
-  IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView");
+  IViewport: ClassReference("org.apache.royale.jewel.supportClasses.ScrollingViewport");
+  IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel");
+  IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.SingleSelectionCollectionViewModel");
+  IDataProviderItemRendererMapper: ClassReference("org.apache.royale.jewel.beads.DataItemRendererFactoryForCollectionView");
 }
 
 @media -royale-swf {
   j|List {
-    iBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    iBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-    iBorderModel: ClassReference("org.apache.royale.html.beads.models.SingleLineBorderModel");
-    IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup");
+    IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup");
   }
 }
 @media -royale-swf {
   j|RadioButton {
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ValueToggleButtonModel");
     IBeadView: ClassReference("org.apache.royale.jewel.beads.views.RadioButtonView");
   }
 }
@@ -181,7 +173,7 @@ j|Slider {
   }
 }
 j|TextInput {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.TextModel");
+  IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.TextModel");
 }
 
 .jewel.titlebar {
@@ -191,16 +183,9 @@ j|TextInput {
 }
 
 j|TitleBar {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.TitleBarModel");
+  IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.TitleBarModel");
   IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.HorizontalLayout");
   IBeadView: ClassReference("org.apache.royale.jewel.beads.views.TitleBarView");
 }
 
-@media -royale-swf {
-  j|TitleBar {
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-  }
-}
-
 /*# sourceMappingURL=defaults.css.map */
diff --git a/frameworks/projects/Jewel/src/main/resources/jewel-as-manifest.xml b/frameworks/projects/Jewel/src/main/resources/jewel-as-manifest.xml
index e38496a..573376b 100644
--- a/frameworks/projects/Jewel/src/main/resources/jewel-as-manifest.xml
+++ b/frameworks/projects/Jewel/src/main/resources/jewel-as-manifest.xml
@@ -21,5 +21,6 @@
 
 <componentPackage>
 
-    
+    <component id="HScrollBar" class="org.apache.royale.jewel.supportClasses.HScrollBar"/>
+    <component id="VScrollBar" class="org.apache.royale.jewel.supportClasses.VScrollBar"/>
 </componentPackage>
diff --git a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml
index 6ec7639..93ea1bb 100644
--- a/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml
+++ b/frameworks/projects/Jewel/src/main/resources/jewel-manifest.xml
@@ -22,8 +22,10 @@
 <componentPackage>
 
     <component id="Application" class="org.apache.royale.jewel.Application"/>
+    <component id="Group" class="org.apache.royale.jewel.Group"/>
     <component id="Button" class="org.apache.royale.jewel.Button"/>
     <component id="Label" class="org.apache.royale.jewel.Label"/>
+    <component id="MultilineLabel" class="org.apache.royale.jewel.MultilineLabel"/>
     <component id="TextInput" class="org.apache.royale.jewel.TextInput"/>
     <component id="Slider" class="org.apache.royale.jewel.Slider"/>
     <component id="RadioButton" class="org.apache.royale.jewel.RadioButton"/>
@@ -34,7 +36,10 @@
     <component id="List" class="org.apache.royale.jewel.List"/>
     <component id="DropDownList" class="org.apache.royale.jewel.DropDownList"/>
     
+    <component id="DropDownListList" class="org.apache.royale.jewel.supportClasses.DropDownListList"/>
+    
     <component id="Disabled" class="org.apache.royale.jewel.beads.controls.Disabled"/>
+    <component id="TextPromptBead" class="org.apache.royale.jewel.beads.controls.textinput.TextPromptBead"/>
 
     <component id="HorizontalLayout" class="org.apache.royale.jewel.beads.layouts.HorizontalLayout"/>
     <component id="VerticalLayout" class="org.apache.royale.jewel.beads.layouts.VerticalLayout"/>
@@ -44,6 +49,10 @@
     
     <component id="ListItemRenderer" class="org.apache.royale.jewel.itemRenderers.ListItemRenderer"/>
 
+    <component id="ScrollingViewport" class="org.apache.royale.jewel.supportClasses.ScrollingViewport" />
+
+    <component id="DataItemRendererFactoryForCollectionView" class="org.apache.royale.jewel.beads.DataItemRendererFactoryForCollectionView" />
+
     <!-- <component id="JewelLabelViewBead" class="org.apache.royale.jewel.beads.views.JewelLabelViewBead"/> -->
     
 </componentPackage>
diff --git a/frameworks/projects/Jewel/src/main/royale/JewelClasses.as b/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
index a7dc5d2..e4c7942 100644
--- a/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
+++ b/frameworks/projects/Jewel/src/main/royale/JewelClasses.as
@@ -28,14 +28,23 @@ package
     internal class JewelClasses
     {
         import org.apache.royale.jewel.beads.models.SliderRangeModel; SliderRangeModel;
+        import org.apache.royale.jewel.beads.models.AlertModel; AlertModel;
+        import org.apache.royale.jewel.beads.models.TitleBarModel; TitleBarModel;
+        import org.apache.royale.jewel.beads.models.TextModel; TextModel;
+        import org.apache.royale.jewel.beads.models.RangeModel; RangeModel;
+
         import org.apache.royale.jewel.beads.controllers.SliderMouseController; SliderMouseController;
         import org.apache.royale.jewel.beads.controllers.AlertController; AlertController;
+        import org.apache.royale.jewel.beads.controllers.ListSingleSelectionMouseController; ListSingleSelectionMouseController;
         
         import org.apache.royale.jewel.beads.views.SliderView; SliderView;
         import org.apache.royale.jewel.beads.views.AlertView; AlertView;
         import org.apache.royale.jewel.beads.views.TitleBarView; TitleBarView;
         import org.apache.royale.jewel.beads.views.AlertTitleBarView; AlertTitleBarView;
         import org.apache.royale.jewel.beads.views.ListView; ListView;
+
+        import org.apache.royale.jewel.beads.models.SingleSelectionCollectionViewModel; SingleSelectionCollectionViewModel;
+        import org.apache.royale.jewel.supportClasses.ScrollingViewport; ScrollingViewport;
         
         COMPILE::SWF
 	    {
@@ -48,6 +57,7 @@ package
 		    import org.apache.royale.jewel.beads.views.CheckBoxView; CheckBoxView;
 
             import org.apache.royale.jewel.beads.views.DropDownListView; DropDownListView;
+            import org.apache.royale.jewel.beads.controllers.DropDownListController; DropDownListController;
         }
 
         import org.apache.royale.jewel.beads.layouts.HorizontalLayout; HorizontalLayout;
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Alert.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Alert.as
index 1363127..3c06561 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Alert.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Alert.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel
 {
-    import org.apache.royale.html.Group;
+    import org.apache.royale.jewel.Group;
 	import org.apache.royale.core.IAlertModel;
 	import org.apache.royale.core.IPopUp;
 
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Application.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Application.as
index 10ae0d1..d2fcbc6 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Application.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Application.as
@@ -18,53 +18,730 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel
 {
-    import org.apache.royale.core.Application;
+    import org.apache.royale.core.ApplicationBase;
+    import org.apache.royale.core.IParent;
+    import org.apache.royale.events.Event;
+    import org.apache.royale.events.IEventDispatcher;
+    import org.apache.royale.utils.MXMLDataInterpreter;
+    import org.apache.royale.utils.Timer;
+    import org.apache.royale.core.IStrand;
+	import org.apache.royale.core.IInitialViewApplication;
+	import org.apache.royale.core.IPopUpHost;
+	import org.apache.royale.core.IRenderedObject;
     import org.apache.royale.core.SimpleCSSValuesImpl;
-		
-	/**
-	 * Jewel Application holds specific Jewel need in a Royale Application.
-	 *
-	 * This class extends the standard Application and sets up the
-	 * SimpleCSSValuesImpl (implementation) for convenience.
+    import org.apache.royale.core.IBead;
+    import org.apache.royale.core.ILayoutChild;
+    import org.apache.royale.core.ValuesManager;
+    import org.apache.royale.core.IValuesImpl;
+    import org.apache.royale.core.IChild;
+    import org.apache.royale.core.IUIBase;
+    import org.apache.royale.core.IApplicationView;
+
+    COMPILE::SWF {
+        import flash.display.DisplayObject;
+        import flash.display.StageAlign;
+        import flash.display.StageQuality;
+        import flash.display.StageScaleMode;
+        import flash.events.Event;
+        import org.apache.royale.events.utils.MouseEventConverter;
+    }
+
+    COMPILE::JS {
+        import org.apache.royale.core.UIBase;
+    }
+
+    //--------------------------------------
+    //  Events
+    //--------------------------------------
+
+    /**
+     *  Dispatched at startup. Attributes and sub-instances of
+     *  the MXML document have been created and assigned.
+     *  The component lifecycle is different
+     *  than the Flex SDK.  There is no creationComplete event.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="initialize", type="org.apache.royale.events.Event")]
+
+    /**
+     *  Dispatched at startup before the instances get created.
+     *  Beads can call preventDefault and defer initialization.
+     *  This event will be dispatched on every frame until no
+     *  listeners call preventDefault(), then the initialize()
+     *  method will be called.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="preinitialize", type="org.apache.royale.events.Event")]
+
+    /**
+     *  Dispatched at startup after the initial view has been
+     *  put on the display list. This event is sent before
+     *  applicationComplete is dispatched.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="viewChanged", type="org.apache.royale.events.Event")]
+
+    /**
+     *  Dispatched at startup after the initial view has been
+     *  put on the display list.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="applicationComplete", type="org.apache.royale.events.Event")]
+    
+    /**
+     *  Jewel Application holds specific Jewel need in a Royale Application.
 	 *
+	 *  This class extends the standard Application and sets up the
+	 *  SimpleCSSValuesImpl (implementation) for convenience.
 	 * 
-	 *  @langversion 3.0
-	 *  @playerversion Flash 10.2
-	 *  @playerversion AIR 2.6
-	 *  @productversion Royale 0.9.3
-	 */
-	public class Application extends org.apache.royale.core.Application
-	{
-		/**
-         *  constructor.
+	 *  The Application class is the main class and entry point for a Royale
+     *  application.  This Application class is different than the
+     *  Flex SDK's mx:Application or spark:Application in that it does not contain
+     *  user interface elements.  Those UI elements go in the views (ViewBase).  This
+     *  Application class expects there to be a main model, a controller, and
+     *  an initial view.
+     *
+     *  @see ViewBase
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    public class Application extends ApplicationBase implements IStrand, IParent, IEventDispatcher, IInitialViewApplication, IPopUpHost, IRenderedObject
+    {
+        /**
+         *  Constructor.
          *
-		 * <inject_html>
-		 * <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1">
-     	 * </inject_html>
-	 	 * 
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
          *  @productversion Royale 0.9.3
          */
-		public function Application()
-		{
-			super();
-			
+        public function Application()
+        {
+            super();
+
+            COMPILE::SWF {
+    			if (stage)
+    			{
+    				stage.align = StageAlign.TOP_LEFT;
+    				stage.scaleMode = StageScaleMode.NO_SCALE;
+                    // should be opt-in
+    				//stage.quality = StageQuality.HIGH_16X16_LINEAR;
+    			}
+
+                loaderInfo.addEventListener(flash.events.Event.INIT, initHandler);
+            }
+			COMPILE::JS {
+				element = document.getElementsByTagName('body')[0];
+				element.className = 'Application';			
+			}
+
 			this.valuesImpl = new SimpleCSSValuesImpl();
+        }
+        
+        protected var instanceParent:IParent = null;
 
-			// this a is temp solution until we get a better way to get a reference to Application
-			//topLevelApplication = this;
-		}
+        COMPILE::SWF
+        private function initHandler(event:flash.events.Event):void
+        {
+			if (model is IBead) addBead(model as IBead);
+			if (controller is IBead) addBead(controller as IBead);
 
-		/**
-         *  static reference to this application used mainly for dialog (Dialog class)
-		 * 
+            MouseEventConverter.setupAllConverters(stage);
+
+            for each (var bead:IBead in beads)
+                addBead(bead);
+
+            dispatchEvent(new org.apache.royale.events.Event("beadsAdded"));
+
+            if (dispatchEvent(new org.apache.royale.events.Event("preinitialize", false, true)))
+                initialize();
+            else
+                addEventListener(flash.events.Event.ENTER_FRAME, enterFrameHandler);
+
+        }
+
+        COMPILE::SWF
+        private function enterFrameHandler(event:flash.events.Event):void
+        {
+            if (dispatchEvent(new org.apache.royale.events.Event("preinitialize", false, true)))
+            {
+                removeEventListener(flash.events.Event.ENTER_FRAME, enterFrameHandler);
+                initialize();
+            }
+        }
+
+        /**
+         *  This method gets called when all preinitialize handlers
+         *  no longer call preventDefault();
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        COMPILE::SWF
+        protected function initialize():void
+        {
+
+            MXMLDataInterpreter.generateMXMLInstances(this, instanceParent, MXMLDescriptor);
+
+            dispatchEvent(new org.apache.royale.events.Event("initialize"));
+
+            if (initialView)
+            {
+                initialView.applicationModel =  model;
+        	    this.addElement(initialView);
+                // if someone has installed a resize listener, fake an event to run it now
+                if (stage.hasEventListener("resize"))
+                    stage.dispatchEvent(new flash.events.Event("resize"));
+                else if (initialView is ILayoutChild)
+                {
+                    var ilc:ILayoutChild = initialView as ILayoutChild;
+                    // otherwise, size once like this
+                    if (!isNaN(ilc.percentWidth) && !isNaN(ilc.percentHeight))
+                        ilc.setWidthAndHeight(stage.stageWidth, stage.stageHeight, true);
+                    else if (!isNaN(ilc.percentWidth))
+                        ilc.setWidth(stage.stageWidth);
+                    else if (!isNaN(ilc.percentHeight))
+                        ilc.setHeight(stage.stageHeight);
+                }
+                var bgColor:Object = ValuesManager.valuesImpl.getValue(this, "background-color");
+                if (bgColor != null)
+                {
+                    var backgroundColor:uint = ValuesManager.valuesImpl.convertColor(bgColor);
+                    graphics.beginFill(backgroundColor);
+                    graphics.drawRect(0, 0, initialView.width, initialView.height);
+                    graphics.endFill();
+                }
+                dispatchEvent(new org.apache.royale.events.Event("viewChanged"));
+            }
+            dispatchEvent(new org.apache.royale.events.Event("applicationComplete"));
+        }
+
+        /**
+         *  The org.apache.royale.core.IValuesImpl that will
+         *  determine the default values and other values
+         *  for the application.  The most common choice
+         *  is org.apache.royale.core.SimpleCSSValuesImpl.
+         *
+         *  @see org.apache.royale.core.SimpleCSSValuesImpl
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        public function set valuesImpl(value:IValuesImpl):void
+        {
+            ValuesManager.valuesImpl = value;
+            ValuesManager.valuesImpl.init(this);
+        }
+
+        private var _initialView:IApplicationView;
+        /**
+         *  The initial view.
+         *
+         *  @see org.apache.royale.core.ViewBase
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        public function get initialView():IApplicationView
+        {
+            return _initialView;
+        }
+        public function set initialView(value:IApplicationView):void
+        {
+            _initialView = value;
+        }
+
+        /**
+         *  The data model (for the initial view).
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        [Bindable("__NoChangeEvent__")]
+        COMPILE::SWF
+        public var model:Object;
+
+        COMPILE::JS
+        private var _model:Object;
+
+        /**
+         *  The data model (for the initial view).
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        [Bindable("__NoChangeEvent__")]
+        COMPILE::JS
+        override public function get model():Object
+        {
+            return _model;
+        }
+
+        /**
+         *  @private
+         */
+        [Bindable("__NoChangeEvent__")]
+        COMPILE::JS
+        override public function set model(value:Object):void
+        {
+            _model = value;
+        }
+
+        private var _controller:Object;
+        
+        /**
+         *  The controller.  The controller typically watches
+         *  the UI for events and updates the model accordingly.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        [Bindable("__NoChangeEvent__")]
+        public function get controller():Object
+        {
+            return _controller;
+        }
+        
+        /**
+         *  @private
+         */
+        [Bindable("__NoChangeEvent__")]
+        public function set controller(value:Object):void
+        {
+            _controller = value;
+        }
+
+        /**
+         *  Application can host popups but they will be in the layout, if any
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        public function get popUpParent():IParent
+        {
+            return this;
+        }
+        
+        /**
+         *  An array of data that describes the MXML attributes
+         *  and tags in an MXML document.  This data is usually
+         *  decoded by an MXMLDataInterpreter
+         *
+         *  @see org.apache.royale.utils.MXMLDataInterpreter
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        public function get MXMLDescriptor():Array
+        {
+            return null;
+        }
+
+        /**
+         *  An method called by the compiler's generated
+         *  code to kick off the setting of MXML attribute
+         *  values and instantiation of child tags.
+         *
+         *  The call has to be made in the generated code
+         *  in order to ensure that the constructors have
+         *  completed first.
+         *
+         *  @param data The encoded data representing the
+         *  MXML attributes.
+         *
+         *  @see org.apache.royale.utils.MXMLDataInterpreter
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+    	public function generateMXMLAttributes(data:Array):void
+        {
+            // move the initialView to be the last thing to be
+            // the last thing instantiated so all other properties
+            // are set up first.  This more closely mimics the
+            // Flex timing
+            var propCount:int = data[0];
+            var n:int = data.length;
+            for (var i:int = 1; i < n; i += 3)
+            {
+                if (data[i] == "initialView")
+                {
+                    var initialViewArray:Array = data.splice(i, 3);
+                    var offset:int = (propCount - 1) * 3 + 1;
+                    data.splice(offset, 0, initialViewArray[0], initialViewArray[1], initialViewArray[2]);
+                }
+            }
+			MXMLDataInterpreter.generateMXMLProperties(this, data);
+        }
+
+        /**
+         *  The array property that is used to add additional
+         *  beads to an MXML tag.  From ActionScript, just
+         *  call addBead directly.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         * 
+         *  @royalesuppresspublicvarwarning
+         */
+        public var beads:Array;
+
+        COMPILE::SWF
+        private var _beads:Vector.<IBead>;
+
+        /**
+         *  @copy org.apache.royale.core.IStrand#addBead()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        COMPILE::SWF
+        public function addBead(bead:IBead):void
+        {
+            if (!_beads)
+                _beads = new Vector.<IBead>;
+            _beads.push(bead);
+            bead.strand = this;
+        }
+
+        /**
+         *  @copy org.apache.royale.core.IStrand#getBeadByType()
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
          *  @productversion Royale 0.9.3
          */
-        //public static var topLevelApplication:Object;
-	}
+        COMPILE::SWF
+        public function getBeadByType(classOrInterface:Class):IBead
+        {
+            for each (var bead:IBead in _beads)
+            {
+                if (bead is classOrInterface)
+                    return bead;
+            }
+            return null;
+        }
+
+        /**
+         *  @copy org.apache.royale.core.IStrand#removeBead()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        COMPILE::SWF
+        public function removeBead(value:IBead):IBead
+        {
+            var n:int = _beads.length;
+            for (var i:int = 0; i < n; i++)
+            {
+                var bead:IBead = _beads[i];
+                if (bead == value)
+                {
+                    _beads.splice(i, 1);
+                    return bead;
+                }
+            }
+            return null;
+        }
+
+        /**
+         *  @copy org.apache.royale.core.IParent#addElement()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         *  @royaleignorecoercion org.apache.royale.core.IUIBase
+         *  @royaleignorecoercion HTMLElement
+         */
+        public function addElement(c:IChild, dispatchEvent:Boolean = true):void
+        {
+            COMPILE::SWF {
+                if (c is IUIBase)
+                {
+                    if (c is IRenderedObject)
+                        addChild(IRenderedObject(c).$displayObject);
+                    else
+                        addChild(c as DisplayObject);
+                    IUIBase(c).addedToParent();
+                }
+                else
+                    addChild(c as DisplayObject);
+            }
+            COMPILE::JS {
+                this.element.appendChild(c.element as HTMLElement);
+                (c as IUIBase).addedToParent();
+            }
+        }
+
+        /**
+         *  @copy org.apache.royale.core.IParent#addElementAt()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         *  @royaleignorecoercion org.apache.royale.core.IUIBase
+         */
+        public function addElementAt(c:IChild, index:int, dispatchEvent:Boolean = true):void
+        {
+            COMPILE::SWF {
+                if (c is IUIBase)
+                {
+                    if (c is IRenderedObject)
+                        addChildAt(IRenderedObject(c).$displayObject, index);
+                    else
+                        addChildAt(c as DisplayObject, index);
+                    IUIBase(c).addedToParent();
+                }
+                else
+                    addChildAt(c as DisplayObject, index);
+            }
+            COMPILE::JS {
+                var children:NodeList = internalChildren();
+                if (index >= children.length)
+                    addElement(c);
+                else
+                {
+                    element.insertBefore(c.positioner,
+                        children[index]);
+	                (c as IUIBase).addedToParent();
+                }
+
+            }
+        }
+
+        /**
+         *  @copy org.apache.royale.core.IParent#getElementAt()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        public function getElementAt(index:int):IChild
+        {
+            COMPILE::SWF {
+                return getChildAt(index) as IChild;
+            }
+            COMPILE::JS {
+                var children:NodeList = internalChildren();
+                return children[index].royale_wrapper;
+            }
+        }
+
+        /**
+         *  @copy org.apache.royale.core.IParent#getElementIndex()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        public function getElementIndex(c:IChild):int
+        {
+            COMPILE::SWF {
+                if (c is IRenderedObject)
+                    return getChildIndex(IRenderedObject(c).$displayObject);
+
+                return getChildIndex(c as DisplayObject);
+            }
+            COMPILE::JS {
+                var children:NodeList = internalChildren();
+                var n:int = children.length;
+                for (var i:int = 0; i < n; i++)
+                {
+                    if (children[i] == c.element)
+                        return i;
+                }
+                return -1;
+            }
+        }
+
+        /**
+         *  @copy org.apache.royale.core.IParent#removeElement()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         *  @royaleignorecoercion HTMLElement
+         */
+        public function removeElement(c:IChild, dispatchEvent:Boolean = true):void
+        {
+            COMPILE::SWF {
+                if (c is IRenderedObject)
+                {
+                    removeChild(IRenderedObject(c).$displayObject);
+                }
+                else
+                    removeChild(c as DisplayObject);
+            }
+            COMPILE::JS {
+                element.removeChild(c.element as HTMLElement);
+            }
+        }
+
+        /**
+         *  @copy org.apache.royale.core.IParent#numElements
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+        public function get numElements():int
+        {
+            COMPILE::SWF {
+                return numChildren;
+            }
+            COMPILE::JS {
+                var children:NodeList = internalChildren();
+                return children.length;
+            }
+        }
+
+        /**
+         * @return {Object} The array of children.
+         */
+        COMPILE::JS
+        protected function internalChildren():NodeList
+        {
+            return element.childNodes;
+        };
+		
+		COMPILE::JS
+		protected var startupTimer:Timer;
+
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.IBead
+		 */
+		COMPILE::JS
+		public function start():void
+		{
+			if (model is IBead) addBead(model as IBead);
+			if (controller is IBead) addBead(controller as IBead);
+			
+			for (var index:int in beads) {
+				addBead(beads[index]);
+			}
+			
+			dispatchEvent(new org.apache.royale.events.Event("beadsAdded"));
+			
+			if (dispatchEvent(new org.apache.royale.events.Event("preinitialize", false, true)))
+				initialize();
+			else {			
+				startupTimer = new Timer(34, 0);
+				startupTimer.addEventListener("timer", handleStartupTimer);
+				startupTimer.start();
+			}
+		}
+		
+		/**
+		 * @private
+		 */
+		COMPILE::JS
+		protected function handleStartupTimer(event:Event):void
+		{
+			if (dispatchEvent(new org.apache.royale.events.Event("preinitialize", false, true)))
+			{
+				startupTimer.stop();
+				initialize();
+			}
+		}
+		
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.IBead
+         * @royaleignorecoercion org.apache.royale.core.UIBase
+		 */
+		COMPILE::JS
+		protected function initialize():void
+		{
+			MXMLDataInterpreter.generateMXMLInstances(this, instanceParent, MXMLDescriptor);
+			
+			dispatchEvent('initialize');
+			
+			if (initialView)
+			{
+                initialView.applicationModel = model;
+                addElement(initialView);
+                
+				var baseView:UIBase = initialView as UIBase;
+				if (!isNaN(baseView.percentWidth) || !isNaN(baseView.percentHeight)) {
+					this.element.style.height = window.innerHeight.toString() + 'px';
+					this.element.style.width = window.innerWidth.toString() + 'px';
+					this.initialView.dispatchEvent('sizeChanged'); // kick off layout if % sizes
+				}
+				
+				dispatchEvent(new org.apache.royale.events.Event("viewChanged"));
+			}
+			dispatchEvent(new org.apache.royale.events.Event("applicationComplete"));
+		}
+        
+        COMPILE::SWF
+        public function get $displayObject():DisplayObject
+        {
+            return this;
+        }
+        
+        COMPILE::SWF
+        override public function set width(value:Number):void
+        {
+            // just eat this.  
+            // The stageWidth will be set by SWF metadata. 
+            // Setting this directly doesn't do anything
+        }
+        
+        COMPILE::SWF
+        override public function set height(value:Number):void
+        {
+            // just eat this.  
+            // The stageWidth will be set by SWF metadata. 
+            // Setting this directly doesn't do anything
+        }
+
+    }
 }
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Button.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Button.as
index 9f1904a..86ebdb4 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Button.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Button.as
@@ -18,15 +18,301 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel
 {
-    import org.apache.royale.html.Button;
     import org.apache.royale.utils.ClassSelectorList;
     import org.apache.royale.core.ITextModel;
+    import org.apache.royale.core.IStrand;
+    import org.apache.royale.core.IUIBase;
+    import org.apache.royale.events.IEventDispatcher;
+
+    COMPILE::SWF
+    {
+    	import org.apache.royale.core.UIButtonBase;
+    }
 
     COMPILE::JS
     {
         import org.apache.royale.core.WrappedHTMLElement;
+        import org.apache.royale.core.UIBase;
+        import org.apache.royale.html.util.addElementToWrapper;
     }
 
+    //--------------------------------------
+    //  Events
+    //--------------------------------------
+    
+    /**
+     *  Dispatched when the user clicks on a button.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+	[Event(name="click", type="org.apache.royale.events.MouseEvent")]
+
+    /**
+     *  Set a different class for rollOver events so that
+     *  there aren't dependencies on the flash classes
+     *  on the JS side.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="rollOver", type="org.apache.royale.events.MouseEvent")]
+    
+    /**
+     *  Set a different class for rollOut events so that
+     *  there aren't dependencies on the flash classes
+     *  on the JS side.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="rollOut", type="org.apache.royale.events.MouseEvent")]
+    
+    /**
+     *  Set a different class for mouseDown events so that
+     *  there aren't dependencies on the flash classes
+     *  on the JS side.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="mouseDown", type="org.apache.royale.events.MouseEvent")]
+    
+    /**
+     *  Set a different class for mouseUp events so that
+     *  there aren't dependencies on the flash classes
+     *  on the JS side.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="mouseUp", type="org.apache.royale.events.MouseEvent")]
+    
+    /**
+     *  Set a different class for mouseMove events so that
+     *  there aren't dependencies on the flash classes
+     *  on the JS side.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="mouseMove", type="org.apache.royale.events.MouseEvent")]
+    
+    /**
+     *  Set a different class for mouseOut events so that
+     *  there aren't dependencies on the flash classes
+     *  on the JS side.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    [Event(name="mouseOut", type="org.apache.royale.events.MouseEvent")]
+    
+	/**
+	 *  Set a different class for mouseOver events so that
+	 *  there aren't dependencies on the flash classes
+	 *  on the JS side.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion Royale 0.9.3
+	 */
+	[Event(name="mouseOver", type="org.apache.royale.events.MouseEvent")]
+	/**
+	 *  Set a different class for mouseWheel events so that
+	 *  there aren't dependencies on the flash classes
+	 *  on the JS side.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion Royale 0.9.3
+	 */
+	[Event(name="mouseWheel", type="org.apache.royale.events.MouseEvent")]
+	
+	/**
+	 *  Set a different class for doubleClick events so that
+	 *  there aren't dependencies on the flash classes
+	 *  on the JS side.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion Royale 0.9.3
+	 */
+	[Event(name="doubleClick", type="org.apache.royale.events.MouseEvent")]
+
+
+    [DefaultProperty("text")]
+
+    /**
+     *  The ButtonBase class is the base class for Button.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    COMPILE::SWF
+	public class Button extends UIButtonBase implements IStrand, IEventDispatcher, IUIBase
+	{
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+		public function Button()
+		{
+			super();
+
+            classSelectorList = new ClassSelectorList(this);
+            typeNames = "jewel button";
+		}
+
+        protected var classSelectorList:ClassSelectorList;
+
+        /**
+         *  @copy org.apache.royale.html.Label#text
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+		public function get text():String
+		{
+            return ITextModel(model).text;
+		}
+
+        /**
+         *  @private
+         */
+		public function set text(value:String):void
+		{
+            ITextModel(model).text = value;
+		}
+
+        /**
+         *  @copy org.apache.royale.html.Label#html
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+		public function get html():String
+		{
+            return ITextModel(model).html;
+		}
+
+        /**
+         *  @private
+         */
+		public function set html(value:String):void
+		{
+            ITextModel(model).html = value;
+		}
+
+        private var _primary:Boolean = false;
+
+        /**
+		 *  A boolean flag to activate "primary" effect selector.
+		 *  Applies primary color display effect.
+         *  Colors are defined in royale-jewel.css
+         *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 */
+        public function get primary():Boolean
+        {
+            return _primary;
+        }
+
+        public function set primary(value:Boolean):void
+        {
+            if (_primary != value)
+            {
+                _primary = value;
+
+                classSelectorList.toggle("primary", value);
+            }
+        }
+        
+        private var _secondary:Boolean = false;
+
+        /**
+		 *  A boolean flag to activate "secondary" effect selector.
+		 *  Applies secondary color display effect.
+         *  Colors are defined in royale-jewel.css
+         *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 */
+        public function get secondary():Boolean
+        {
+            return _secondary;
+        }
+
+        public function set secondary(value:Boolean):void
+        {
+            if (_secondary != value)
+            {
+                _secondary = value;
+
+                classSelectorList.toggle("secondary", value);
+            }
+        }
+
+        private var _emphasized:Boolean = false;
+
+        /**
+		 *  A boolean flag to activate "emphasized" effect selector.
+		 *  Applies emphasized color display effect.
+         *  Colors are defined in royale-jewel.css
+         *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 */
+        public function get emphasized():Boolean
+        {
+            return _emphasized;
+        }
+
+        public function set emphasized(value:Boolean):void
+        {
+            if (_emphasized != value)
+            {
+                _emphasized = value;
+
+                classSelectorList.toggle("emphasized", value);
+            }
+        }
+	}
+
     /**
      *  The Button class that should show text.  This is the lightest weight
      *  button used for non-text buttons like the arrow buttons
@@ -45,8 +331,9 @@ package org.apache.royale.jewel
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.9.3
      */
-    public class Button extends org.apache.royale.html.Button
-	{
+    COMPILE::JS
+    public class Button extends UIBase implements IStrand, IEventDispatcher, IUIBase
+    {
         /**
          *  Constructor.
          *  
@@ -75,14 +362,7 @@ package org.apache.royale.jewel
          */
 		public function get text():String
 		{
-            COMPILE::SWF
-            {
-                return ITextModel(model).text;
-            }
-            COMPILE::JS
-            {
-                return element.innerHTML;
-            }
+            return element.innerHTML;
 		}
 
         /**
@@ -90,15 +370,8 @@ package org.apache.royale.jewel
          */
 		public function set text(value:String):void
 		{
-            COMPILE::SWF
-            {
-                ITextModel(model).text = value;
-            }
-            COMPILE::JS
-            {
-                this.element.innerHTML = value;
-                this.dispatchEvent('textChange');
-            }
+            this.element.innerHTML = value;
+            this.dispatchEvent('textChange');
 		}
 
         /**
@@ -111,14 +384,7 @@ package org.apache.royale.jewel
          */
 		public function get html():String
 		{
-            COMPILE::SWF
-            {
-                return ITextModel(model).html;
-            }
-            COMPILE::JS
-            {
-                return element.innerHTML;
-            }
+            return element.innerHTML;
 		}
 
         /**
@@ -126,15 +392,8 @@ package org.apache.royale.jewel
          */
 		public function set html(value:String):void
 		{
-            COMPILE::SWF
-            {
-                ITextModel(model).html = value;
-            }
-            COMPILE::JS
-            {
-                this.element.innerHTML = value;
-                this.dispatchEvent('textChange');
-            }
+            this.element.innerHTML = value;
+            this.dispatchEvent('textChange');
 		}
 
         private var _primary:Boolean = false;
@@ -147,7 +406,7 @@ package org.apache.royale.jewel
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9.2
+		 *  @productversion Royale 0.9.3
 		 */
         public function get primary():Boolean
         {
@@ -174,7 +433,7 @@ package org.apache.royale.jewel
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9.2
+		 *  @productversion Royale 0.9.3
 		 */
         public function get secondary():Boolean
         {
@@ -201,7 +460,7 @@ package org.apache.royale.jewel
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9.2
+		 *  @productversion Royale 0.9.3
 		 */
         public function get emphasized():Boolean
         {
@@ -218,7 +477,21 @@ package org.apache.royale.jewel
             }
         }
         
-        COMPILE::JS
+        /**
+		 * @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
+         */
+        override protected function createElement():WrappedHTMLElement
+        {
+			addElementToWrapper(this,'button');
+            element.setAttribute('type', 'button');
+            /* AJH comment out until we figure out why it is needed
+            if (org.apache.royale.core.ValuesManager.valuesImpl.getValue) {
+                var impl:Object = org.apache.royale.core.ValuesManager.valuesImpl.
+                    getValue(this, 'iStatesImpl');
+            }*/
+            return element;
+        }       
+
         override protected function setClassName(value:String):void
         {
             classSelectorList.addNames(value);
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/CheckBox.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/CheckBox.as
index 55ff231..7a8779c 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/CheckBox.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/CheckBox.as
@@ -18,18 +18,130 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel
 {
-    import org.apache.royale.html.CheckBox;
     import org.apache.royale.core.IToggleButtonModel;
     import org.apache.royale.utils.ClassSelectorList;
+    import org.apache.royale.events.Event;
+    import org.apache.royale.jewel.supportClasses.CheckBoxIcon;
+
+    COMPILE::SWF
+    {
+        import org.apache.royale.events.MouseEvent;
+        import org.apache.royale.core.UIButtonBase;
+        import org.apache.royale.core.IStrand;
+        import org.apache.royale.core.ISelectable;
+    }
 
     COMPILE::JS
     {
         import org.apache.royale.core.WrappedHTMLElement;
-        import org.apache.royale.events.Event;
         import org.apache.royale.html.util.addElementToWrapper;
         import org.apache.royale.utils.cssclasslist.addStyles;
+        import org.apache.royale.core.UIBase;
     }
 
+    //--------------------------------------
+    //  Events
+    //--------------------------------------
+
+    /**
+     *  Dispatched when the user checks or un-checks the CheckBox.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+	[Event(name="change", type="org.apache.royale.events.Event")]
+
+    /**
+     *  The CheckBox class implements the common user interface
+     *  control.  The CheckBox includes its text label.
+     *
+     *  @toplevel
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+    COMPILE::SWF
+	public class CheckBox extends UIButtonBase implements IStrand, ISelectable
+	{
+        /**
+         *  Constructor.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+		public function CheckBox()
+		{
+			super();
+
+			addEventListener(org.apache.royale.events.MouseEvent.CLICK, internalMouseHandler);
+		}
+
+        /**
+         *  The text label for the CheckBox.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+		public function get text():String
+		{
+			return IToggleButtonModel(model).text;
+		}
+
+        /**
+         *  @private
+         */
+		public function set text(value:String):void
+		{
+			IToggleButtonModel(model).text = value;
+		}
+
+        [Bindable("change")]
+        /**
+         *  <code>true</code> if the check mark is displayed.
+         *
+         *  @default false
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+		public function get selected():Boolean
+		{
+			return IToggleButtonModel(model).selected;
+		}
+
+        /**
+         *  @private
+         */
+		public function set selected(value:Boolean):void
+		{
+			IToggleButtonModel(model).selected = value;
+		}
+
+		private function internalMouseHandler(event:org.apache.royale.events.MouseEvent) : void
+		{
+			selected = !selected;
+			dispatchEvent(new Event("change"));
+		}
+	}
+
+    /**
+     *  Dispatched when the user checks or un-checks the CheckBox.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+	[Event(name="change", type="org.apache.royale.events.Event")]
+
     /**
      *  The CheckBox class provides a Jewel UI-like appearance for a CheckBox.
      *
@@ -45,8 +157,9 @@ package org.apache.royale.jewel
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.9.3
      */
-	public class CheckBox extends org.apache.royale.html.CheckBox
-	{
+    COMPILE::JS
+    public class CheckBox extends UIBase
+    {
         /**
          *  Constructor.
          *  
@@ -64,12 +177,17 @@ package org.apache.royale.jewel
         }
 
         protected var classSelectorList:ClassSelectorList;
-        
+
         COMPILE::JS
         override protected function setClassName(value:String):void
         {
             classSelectorList.addNames(value);
         }
+
+        private var _label:WrappedHTMLElement;
+		private var _icon:CheckBoxIcon;
+
+		private static var _checkNumber:Number = 0;
         
         COMPILE::JS
         protected var input:HTMLInputElement;
@@ -131,7 +249,7 @@ package org.apache.royale.jewel
          *  @playerversion AIR 2.6
          *  @productversion Royale 0.9.3
          */
-		override public function get text():String
+		public function get text():String
 		{
             COMPILE::SWF
             {
@@ -146,7 +264,7 @@ package org.apache.royale.jewel
         /**
          *  @private
          */
-        override public function set text(value:String):void
+        public function set text(value:String):void
 		{
             COMPILE::SWF
             {
@@ -210,8 +328,9 @@ package org.apache.royale.jewel
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
          *  @productversion Royale 0.9.3
+         *  @royaleignorecoercion HTMLInputElement
          */
-		override public function get selected():Boolean
+		public function get selected():Boolean
 		{
             COMPILE::SWF
             {
@@ -224,9 +343,9 @@ package org.apache.royale.jewel
 		}
 
         /**
-         *  @private
+         * @royaleignorecoercion HTMLInputElement
          */
-        override public function set selected(value:Boolean):void
+        public function set selected(value:Boolean):void
         {
             COMPILE::SWF
             {
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ControlBar.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ControlBar.as
index d268fc8..6a35d7d 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ControlBar.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/ControlBar.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel
 {
-    import org.apache.royale.html.Group;
+    import org.apache.royale.jewel.Group;
 	import org.apache.royale.core.IBeadLayout;
 	import org.apache.royale.core.IChrome;
 	import org.apache.royale.core.ValuesManager;
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as
index 500adfc..ea273bb 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/DropDownList.as
@@ -24,7 +24,7 @@ package org.apache.royale.jewel
     {
         import goog.events;
         import org.apache.royale.core.WrappedHTMLElement;
-        import org.apache.royale.html.beads.models.ArraySelectionModel;
+        import org.apache.royale.core.beads.models.ArraySelectionModel;
         import org.apache.royale.html.util.addElementToWrapper;
     }
 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/View.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Group.as
similarity index 70%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/core/View.as
rename to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Group.as
index 88632e0..289fb67 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/core/View.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/Group.as
@@ -16,34 +16,57 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.core
-{    	
+package org.apache.royale.jewel
+{
 	import org.apache.royale.core.IMXMLDocument;
+	import org.apache.royale.core.GroupBase;
 	import org.apache.royale.core.ValuesManager;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.utils.MXMLDataInterpreter;
+
+	/**
+	 *  Indicates that the children of the container is have been added.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion Royale 0.9.3
+	 */
+	[Event(name="childrenAdded", type="org.apache.royale.events.Event")]
 	
 	/**
 	 * The default property uses when additional MXML content appears within an element's
 	 * definition in an MXML file.
 	 */
 	[DefaultProperty("mxmlContent")]
-	
+
     /**
-     *  The View class is the class for most views in a Royale
-     *  application.  It is generally used as the root tag of MXML
-     *  documents and UI controls and containers are added to it.
-     *  
+     *  The Group class provides a light-weight container for visual elements. By default
+	 *  the Group does not have a layout, allowing its children to be sized and positioned
+	 *  using styles or CSS.
+     *
+     *  @toplevel
+     *  @see org.apache.royale.html.beads.layout
+     *  @see org.apache.royale.jewel.supportClasses.ScrollingViewport
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
-     *  @productversion Royale 0.0
+     *  @productversion Royale 0.9.3
      */
-	public class View extends ViewBase implements IMXMLDocument
-	{		
-		public function View()
+	public class Group extends GroupBase implements IMXMLDocument
+	{
+        /**
+         *  Constructor.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         */
+		public function Group()
 		{
 			super();
+            typeNames = "";
 		}
 		
 		private var _mxmlDescriptor:Array;
@@ -71,7 +94,7 @@ package org.apache.royale.core
 				dispatchEvent(new Event("initComplete"));
 				_initialized = true;
 				
-				// - why was this added here? childrenAdded(); //?? Is this necessary since MXMLDataInterpreter will already have called it
+				//?? why was this added here? childrenAdded(); //?? Is this needed since MXMLDataInterpreter will already have called it
 			}
 		}
 		
@@ -81,7 +104,7 @@ package org.apache.royale.core
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.8
+		 *  @productversion Royale 0.9.3
 		 */
 		public function get MXMLDescriptor():Array
 		{
@@ -103,7 +126,7 @@ package org.apache.royale.core
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.8
+		 *  @productversion Royale 0.9.3
 		 */
 		public function generateMXMLAttributes(data:Array):void
 		{
@@ -116,10 +139,10 @@ package org.apache.royale.core
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.8
+		 *  @productversion Royale 0.9.3
          * 
          *  @royalesuppresspublicvarwarning
 		 */
 		public var mxmlContent:Array;
-    }
+	}
 }
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/List.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/List.as
index 4a02568..ce32be9 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/List.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/List.as
@@ -20,8 +20,10 @@ package org.apache.royale.jewel
 {
 	import org.apache.royale.core.IRollOverModel;
 	import org.apache.royale.core.ISelectionModel;
-    import org.apache.royale.html.DataContainer;
-    
+    import org.apache.royale.core.DataContainerBase;
+	import org.apache.royale.core.IDataProviderModel;
+	import org.apache.royale.core.IListPresentationModel;
+	import org.apache.royale.jewel.beads.models.ListPresentationModel;
 
 	COMPILE::JS
 	{
@@ -66,7 +68,7 @@ package org.apache.royale.jewel
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.9.3
 	 */
-	public class List extends DataContainer
+	public class List extends DataContainerBase
 	{
 		/**
 		 *  constructor.
@@ -83,6 +85,49 @@ package org.apache.royale.jewel
 		}
 
 		/**
+		 *  The name of field within the data used for display. Each item of the
+		 *  data should have a property with this name.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 *  @royaleignorecoercion org.apache.royale.core.IDataProviderModel
+		 */
+		public function get labelField():String
+		{
+			return IDataProviderModel(model).labelField;
+		}
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.IDataProviderModel
+		 */
+		public function set labelField(value:String):void
+		{
+            IDataProviderModel(model).labelField = value;
+		}
+
+		/**
+		 *  The data being display by the List.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 *  @royaleignorecoercion org.apache.royale.core.IDataProviderModel
+		 */
+        public function get dataProvider():Object
+        {
+            return IDataProviderModel(model).dataProvider;
+        }
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.IDataProviderModel
+		 */
+        public function set dataProvider(value:Object):void
+        {
+            IDataProviderModel(model).dataProvider = value;
+        }
+
+		/**
 		 *  The index of the currently selected item. Changing this value
 		 *  also changes the selectedItem property.
 		 *
@@ -166,5 +211,23 @@ package org.apache.royale.jewel
 			ISelectionModel(model).selectedItem = value;
 		}
 
+		/**
+		 *  The presentation model for the list.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 *  @royaleignorecoercion org.apache.royale.core.IListPresentationModel
+		 */
+		public function get presentationModel():IListPresentationModel
+		{
+			var presModel:IListPresentationModel = getBeadByType(IListPresentationModel) as IListPresentationModel;
+			if (presModel == null) {
+				presModel = new ListPresentationModel();
+				addBead(presModel);
+			}
+			return presModel;
+		}
    	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ContainerContentArea.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/MultilineLabel.as
similarity index 59%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ContainerContentArea.as
rename to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/MultilineLabel.as
index 7dcb4f2..aa1f43f 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ContainerContentArea.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/MultilineLabel.as
@@ -16,52 +16,56 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.jewel
 {
-	import org.apache.royale.core.IBead;
-	import org.apache.royale.core.IStrand;
+	import org.apache.royale.core.ITextModel;
 	import org.apache.royale.core.UIBase;
-    import org.apache.royale.events.Event;
+	import org.apache.royale.core.ValuesManager;
+	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.core.IChild;
-	import org.apache.royale.core.ILayoutView;
+    COMPILE::JS
+    {
+        import org.apache.royale.core.WrappedHTMLElement;
+        import org.apache.royale.html.util.addElementToWrapper;
+    }
 
     /**
-     *  The ContainerContentArea class implements the contentView for
-     *  a Container on the SWF platform.
-     *
+     *  The MultilineLabel class implements the basic control for displaying
+     *  multiline labels.
+     *  
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.0
-     */
-	public class ContainerContentArea extends UIBase implements IBead, ILayoutView
+     */    
+    public class MultilineLabel extends Label
 	{
         /**
          *  Constructor.
-         *
+         *  
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
          *  @productversion Royale 0.0
          */
-		public function ContainerContentArea()
+		public function MultilineLabel()
 		{
 			super();
-            addEventListener("layoutNeeded", forwardEventHandler);
+            typeNames += " multiline";
 		}
-		
-		protected var host:IStrand;
-		
-		public function set strand(value:IStrand):void
-		{
-			host = value;
-		}
-
-        private function forwardEventHandler(event:Event):void
+        
+        /**
+         * @royaleignorecoercion Text
+         */
+        COMPILE::JS
+        override protected function createElement():WrappedHTMLElement
         {
-            if (parent is IEventDispatcher)
-                (parent as IEventDispatcher).dispatchEvent(event);
-        }
+			addElementToWrapper(this,'div');
+			textNode = document.createTextNode(text) as Text;
+            element.appendChild(textNode);
+			element.style.whiteSpace = 'normal'; // was nowrap on safari?
+            return element;
+        }        
+						
 	}
 }
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TitleBar.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TitleBar.as
index 93364bf..baef5ad 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TitleBar.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/TitleBar.as
@@ -18,11 +18,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel
 {
-    import org.apache.royale.html.TitleBar;
+    import org.apache.royale.core.IBead;
+	import org.apache.royale.core.IBeadLayout;
+	import org.apache.royale.core.IChrome;
+	import org.apache.royale.core.ITitleBarModel;
 	import org.apache.royale.core.ValuesManager;
-	import org.apache.royale.utils.MXMLDataInterpreter;
-	import org.apache.royale.events.Event;
+	import org.apache.royale.utils.loadBeadFromValuesManager;
+    COMPILE::JS
+    {
+        import org.apache.royale.core.WrappedHTMLElement;
+        import org.apache.royale.html.util.addElementToWrapper;
+    }
 
+	
 	/**
 	 *  The TitleBar class is a Container component that displays a title and an
 	 *  optional close button. The TitleBar uses the following bead types:
@@ -40,7 +48,7 @@ package org.apache.royale.jewel
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.9.3
 	 */
-	public class TitleBar extends org.apache.royale.html.TitleBar
+	public class TitleBar extends Group implements IChrome
 	{
 		/**
 		 *  constructor.
@@ -56,5 +64,87 @@ package org.apache.royale.jewel
 			
 			typeNames = "jewel titlebar";
 		}
+
+		/**
+		 *  The title string to display.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 *  @royaleignorecoercion org.apache.royale.core.ITitleBarModel
+		 */
+		public function get title():String
+		{
+			return ITitleBarModel(model).title;
+		}
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.ITitleBarModel
+		 */
+		public function set title(value:String):void
+		{
+			ITitleBarModel(model).title = value;
+		}
+		
+		/**
+		 *  The HTML title to display.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 *  @royaleignorecoercion org.apache.royale.core.ITitleBarModel
+		 */
+		public function get htmlTitle():String
+		{
+			return ITitleBarModel(model).htmlTitle;
+		}
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.ITitleBarModel
+		 */
+		public function set htmlTitle(value:String):void
+		{
+			ITitleBarModel(model).htmlTitle = value;
+		}
+		
+		/**
+		 *  Whether or not to show a org.apache.royale.html.Button that indicates the component
+		 *  may be closed.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.9.3
+		 *  @royaleignorecoercion org.apache.royale.core.ITitleBarModel
+		 */
+		public function get showCloseButton():Boolean
+		{
+			return ITitleBarModel(model).showCloseButton;
+		}
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.ITitleBarModel
+		 */
+		public function set showCloseButton(value:Boolean):void
+		{
+			ITitleBarModel(model).showCloseButton = value;
+		}
+		
+		/**
+		 * @private
+		 */
+		override public function addedToParent():void
+		{
+			super.addedToParent();
+			loadBeadFromValuesManager(IBeadLayout, "iBeadLayout", this);
+		}
+        
+        /**
+         * @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
+         */
+        COMPILE::JS
+        override protected function createElement():WrappedHTMLElement
+        {
+			return addElementToWrapper(this,'div');
+        }
 	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForCollectionView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/DataItemRendererFactoryForCollectionView.as
similarity index 98%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForCollectionView.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/DataItemRendererFactoryForCollectionView.as
index 8226e19..edc8199 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/DataItemRendererFactoryForCollectionView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/DataItemRendererFactoryForCollectionView.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.jewel.beads
 {
 	import org.apache.royale.collections.ICollectionView;
 	import org.apache.royale.core.IBead;
@@ -27,7 +27,6 @@ package org.apache.royale.html.beads
 	import org.apache.royale.core.IItemRendererParent;
 	import org.apache.royale.core.IListPresentationModel;
 	import org.apache.royale.core.ISelectableItemRenderer;
-	import org.apache.royale.core.ISelectionModel;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.SimpleCSSStyles;
 	import org.apache.royale.core.UIBase;
@@ -35,9 +34,9 @@ package org.apache.royale.html.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.EventDispatcher;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.html.supportClasses.StringItemRenderer;
-	import org.apache.royale.html.supportClasses.UIItemRendererBase;
+	import org.apache.royale.core.UIItemRendererBase;
 	import org.apache.royale.utils.loadBeadFromValuesManager;
+	import org.apache.royale.core.IListView;
 
 	
 	/**
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/AlertController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/AlertController.as
index 6fcab21..0bccdf8 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/AlertController.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/AlertController.as
@@ -36,7 +36,7 @@ package org.apache.royale.jewel.beads.controllers
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
 	 *  @playerversion AIR 2.6
-	 *  @productversion Royale 0.0
+	 *  @productversion Royale 0.9.3
 	 */
     public class AlertController implements IBeadController
 	{
@@ -46,7 +46,7 @@ package org.apache.royale.jewel.beads.controllers
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.0
+		 *  @productversion Royale 0.9.3
 		 */
 		public function AlertController()
 		{
@@ -60,7 +60,7 @@ package org.apache.royale.jewel.beads.controllers
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.0
+		 *  @productversion Royale 0.9.3
 		 */
         public function get strand():IStrand
         {
@@ -73,7 +73,7 @@ package org.apache.royale.jewel.beads.controllers
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.0
+		 *  @productversion Royale 0.9.3
 		 */
         public function set strand(value:IStrand):void
         {
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DropDownListController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DropDownListController.as
similarity index 97%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DropDownListController.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DropDownListController.as
index a3dbefb..fb13404 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/DropDownListController.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/DropDownListController.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.controllers
+package org.apache.royale.jewel.beads.controllers
 {
 	import flash.display.DisplayObject;
 	import flash.geom.Point;
@@ -30,7 +30,7 @@ package org.apache.royale.html.beads.controllers
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.events.MouseEvent;
-	import org.apache.royale.html.beads.IDropDownListView;
+	import org.apache.royale.core.beads.IDropDownListView;
 
     /**
      *  The DropDownListController class is the controller for
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListSingleSelectionMouseController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ListSingleSelectionMouseController.as
similarity index 97%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListSingleSelectionMouseController.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ListSingleSelectionMouseController.as
index bd8ccb0..f723b13 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/controllers/ListSingleSelectionMouseController.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/ListSingleSelectionMouseController.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.controllers
+package org.apache.royale.jewel.beads.controllers
 {
 	import org.apache.royale.core.IBeadController;
 	import org.apache.royale.core.IItemRendererParent;
@@ -29,7 +29,7 @@ package org.apache.royale.html.beads.controllers
 	import org.apache.royale.events.ItemAddedEvent;
 	import org.apache.royale.events.ItemRemovedEvent;
 	import org.apache.royale.events.MouseEvent;
-	import org.apache.royale.html.beads.IListView;
+	import org.apache.royale.core.IListView;
 	
 	import org.apache.royale.events.ItemClickedEvent;
 
@@ -103,7 +103,7 @@ package org.apache.royale.html.beads.controllers
          *  @productversion Royale 0.9
          *  @royaleignorecoercion org.apache.royale.core.ISelectionModel
          *  @royaleignorecoercion org.apache.royale.events.IEventDispatcher
-         *  @royaleignorecoercion org.apache.royale.html.beads.IListView
+         *  @royaleignorecoercion org.apache.royale.core.IListView
          */
 		public function set strand(value:IStrand):void
 		{
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/SliderMouseController.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/SliderMouseController.as
index b62244a..60f06bd 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/SliderMouseController.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controllers/SliderMouseController.as
@@ -28,7 +28,7 @@ package org.apache.royale.jewel.beads.controllers
 	import org.apache.royale.events.MouseEvent;
 	import org.apache.royale.events.ValueChangeEvent;
 	import org.apache.royale.geom.Point;
-	import org.apache.royale.html.beads.ISliderView;
+	import org.apache.royale.jewel.beads.controls.slider.ISliderView;
     import org.apache.royale.jewel.beads.views.SliderView;
     import org.apache.royale.jewel.Slider;
 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/slider/ISliderView.as
similarity index 64%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/slider/ISliderView.as
index 54a8396..ad800e7 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/slider/ISliderView.as
@@ -16,39 +16,40 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.jewel.beads.controls.slider
 {
-    
+	import org.apache.royale.core.IBead;
+	import org.apache.royale.core.IUIBase;
 	
 	/**
-	 *  The TableCellView class is the view bead for TableCell. It has no function
-	 *  on the JS platform, but with SWF, it prevents the cell from shrinking
-	 *  to fit its content.
+	 *  The ISliderView interface provides the protocol for any bead that
+	 *  creates the visual parts for a org.apache.royale.html.Slider control.
 	 *  
-	 *  @viewbead
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.0
 	 */
-	public class TableCellView extends GroupView
+	public interface ISliderView extends IBead
 	{
 		/**
-		 *  constructor.
+		 *  The component used for the track area of the org.apache.royale.html.Slider.
 		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.0
 		 */
-		public function TableCellView()
-		{
-			super();
-		}
+		function get track():IUIBase;
 		
-		override public function afterLayout():void
-		{
-			// do nothing for TableCell
-		}
+		/**
+		 *  The component used for the thumb button of the org.apache.royale.html.Slider.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		function get thumb():IUIBase;
 	}
 }
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/textinput/TextPromptBead.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/textinput/TextPromptBead.as
new file mode 100644
index 0000000..6229aa0
--- /dev/null
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/controls/textinput/TextPromptBead.as
@@ -0,0 +1,152 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.jewel.beads.controls.textinput
+{
+	COMPILE::SWF
+	{
+		import flash.text.TextFieldType;
+		import org.apache.royale.core.CSSTextField;
+	}
+	
+	import org.apache.royale.core.IBead;
+	import org.apache.royale.core.IStrand;
+	import org.apache.royale.core.UIBase;
+	import org.apache.royale.events.Event;
+	import org.apache.royale.events.IEventDispatcher;
+	
+	/**
+	 *  The TextPromptBead class is a specialty bead that can be used with
+	 *  any TextInput control. The bead places a string into the input field
+	 *  when there is no value associated with the text property.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion Royale 0.0
+	 */
+	public class TextPromptBead implements IBead
+	{
+		/**
+		 *  constructor.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function TextPromptBead()
+		{
+		}
+		
+		private var _prompt:String;
+		
+		/**
+		 *  The string to use as the placeholder prompt.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get prompt():String
+		{
+			return _prompt;
+		}
+		public function set prompt(value:String):void
+		{
+			_prompt = value;
+		}
+		
+		private var _strand:IStrand;
+		
+		/**
+		 *  @copy org.apache.royale.core.IBead#strand
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 *  @royaleignorecoercion HTMLInputElement
+		 *  @royaleignorecoercion org.apache.royale.core.UIBase;
+		 */
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+			
+			COMPILE::SWF
+			{
+				// listen for changes in text to hide or show the prompt
+				var model:Object = UIBase(_strand).model;
+				if (!model.hasOwnProperty("text")) {
+					throw new Error("Model requires a text property when used with TextPromptBead");
+				}
+				IEventDispatcher(model).addEventListener("textChange", handleTextChange);
+				
+				// create a TextField that displays the prompt - it shows
+				// and hides based on the model's content
+				promptField = new CSSTextField();
+				promptField.selectable = false;
+				promptField.type = TextFieldType.DYNAMIC;
+				promptField.mouseEnabled = false;
+				promptField.multiline = false;
+				promptField.wordWrap = false;
+				promptField.textColor = 0xBBBBBB;
+				
+				// trigger the event handler to display if needed
+				handleTextChange(null);					
+			}
+			COMPILE::JS
+			{
+				var host:UIBase = value as UIBase;
+				var e:HTMLInputElement = host.element as HTMLInputElement;
+				e.placeholder = prompt;
+			}
+		}
+		
+		COMPILE::SWF
+		private var promptField:CSSTextField;
+		private var promptAdded:Boolean;
+		
+		/**
+		 * @private
+		 */
+		COMPILE::SWF
+		private function handleTextChange( event:Event ):void
+		{	
+			// see what the model currently has to determine if the prompt should be
+			// displayed or not.
+			var model:Object = UIBase(_strand).model;
+			
+			if (model.text != null && model.text.length > 0 ) {
+				if (promptAdded) UIBase(_strand).removeChild(promptField);
+				promptAdded = false;
+			}
+			else {
+				if (!promptAdded) UIBase(_strand).addChild(promptField);
+				promptField.text = prompt;
+				promptAdded = true;
+                promptField.x = 2;
+                promptField.y = 2;
+                promptField.width = UIBase(_strand).width-5;
+                promptField.height = UIBase(_strand).height-4;
+
+			}
+		}
+	}
+}
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/AlertModel.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/AlertModel.as
new file mode 100644
index 0000000..ef7f35e
--- /dev/null
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/AlertModel.as
@@ -0,0 +1,288 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.jewel.beads.models
+{
+	import org.apache.royale.core.IAlertModel;
+	import org.apache.royale.core.IBead;
+	import org.apache.royale.core.IStrand;
+	import org.apache.royale.events.Event;
+	import org.apache.royale.events.EventDispatcher;
+	
+	/**
+	 *  The AlertModel class bead implements the org.apache.royale.core.IAlertModel and holds the properties
+	 *  for an org.apache.royale.html.Alert such the buttons to use and message to display.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion Royale 0.0
+	 */
+	public class AlertModel extends EventDispatcher implements IAlertModel, IBead
+	{
+		/**
+		 *  constructor.
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function AlertModel()
+		{
+			super();
+		}
+		
+		private var _strand:IStrand;
+		
+		/**
+		 *  @copy org.apache.royale.core.IBead#strand
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+		}
+		
+		private var _title:String;
+		
+		/**
+		 *  The title for the Alert.
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#title
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get title():String
+		{
+			return _title;
+		}
+		public function set title(value:String):void
+		{
+			if( value != _title ) {
+				_title = value;
+				dispatchEvent( new Event("titleChange") );
+			}
+		}
+
+		private var _htmlTitle:String;
+		
+		/**
+		 *  The HTML title for the Alert.
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#htmlTitle
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get htmlTitle():String
+		{
+			return _htmlTitle;
+		}
+		public function set htmlTitle(value:String):void
+		{
+			if( value != _htmlTitle ) {
+				_htmlTitle = value;
+				dispatchEvent( new Event("htmlTitleChange") );
+			}
+		}
+		
+		private var _message:String;
+		
+		/**
+		 *  The message to display.
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#message
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get message():String
+		{
+			return _message;
+		}
+		public function set message(value:String):void
+		{
+			if( value != _message ) {
+				_message = value;
+				dispatchEvent( new Event("messageChange") );
+			}
+		}
+		
+		private var _htmlMessage:String;
+		
+		/**
+		 *  The HTML message to display.
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#htmlMessage
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get htmlMessage():String
+		{
+			return _htmlMessage;
+		}
+		public function set htmlMessage(value:String):void
+		{
+			if( value != _htmlMessage )
+			{
+				_htmlMessage = value;
+				dispatchEvent( new Event("htmlMessageChange") );
+			}
+		}
+		
+		private var _flags:uint;
+		
+		/**
+		 *  Which buttons to display (see Alert for details).
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#flags
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get flags():uint
+		{
+			return _flags;
+		}
+		public function set flags(value:uint):void
+		{
+			if( value != _flags )
+			{
+				_flags = value;
+				dispatchEvent( new Event("flagsChange") );
+			}
+		}
+		
+		private var _okLabel:String = "OK";
+		
+		/**
+		 *  The label to use for the OK button.
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#okLabel
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get okLabel():String
+		{
+			return _okLabel;
+		}
+		public function set okLabel(value:String):void
+		{
+			if( value != _okLabel )
+			{
+				_okLabel = value;
+				dispatchEvent( new Event("okLabelChange") );
+			}
+		}
+		
+		private var _cancelLabel:String = "Cancel";
+		
+		/**
+		 *  The label to use for the Cancel button.
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#cancelLabel
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get cancelLabel():String
+		{
+			return _cancelLabel;
+		}
+		public function set cancelLabel(value:String):void
+		{
+			if( value != _cancelLabel )
+			{
+				_cancelLabel = value;
+				dispatchEvent( new Event("cancelLabelChange") );
+			}
+		}
+		
+		private var _yesLabel:String = "YES";
+		
+		/**
+		 *  The label to use for the Yes button.
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#yesLabel
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get yesLabel():String
+		{
+			return _yesLabel;
+		}
+		public function set yesLabel(value:String):void
+		{
+			if( value != _yesLabel )
+			{
+				_yesLabel = value;
+				dispatchEvent( new Event("yesLabelChange") );
+			}
+		}
+		
+		private var _noLabel:String = "NO";
+		
+		/**
+		 *  The label to use for the NO button.
+		 * 
+		 *  @copy org.apache.royale.core.IAlertModel#noLabel
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get noLabel():String
+		{
+			return _noLabel;
+		}
+		public function set noLabel(value:String):void
+		{
+			if( value != _noLabel )
+			{
+				_noLabel = value;
+				dispatchEvent( new Event("noLabelChange") );
+			}
+		}
+	}
+}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuModel.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/ListPresentationModel.as
similarity index 54%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuModel.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/ListPresentationModel.as
index e5f7b59..e88057b 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/MenuModel.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/ListPresentationModel.as
@@ -16,97 +16,92 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.models
+package org.apache.royale.jewel.beads.models
 {
+	import org.apache.royale.core.IListPresentationModel;
 	import org.apache.royale.core.IStrand;
-
+	import org.apache.royale.events.Event;
+	import org.apache.royale.events.EventDispatcher;
+	
 	/**
-	 * The model used to support menus.
+	 *  The ListPresentationModel holds values used by list controls for presenting
+	 *  their user interfaces.
 	 *
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
 	 *  @playerversion AIR 2.6
-	 *  @productversion Royale 0.9
+	 *  @productversion Royale 0.9.3
 	 */
-	public class MenuModel extends ArraySelectionModel
+	public class ListPresentationModel extends EventDispatcher implements IListPresentationModel
 	{
 		/**
-		 * Constructor.
+		 *  constructor.
 		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9
+		 *  @productversion Royale 0.9.3
 		 */
-		public function MenuModel()
+		public function ListPresentationModel()
 		{
 			super();
 		}
 		
-		private var _strand:IStrand;
+		private var _rowHeight:Number = 30;
 		
 		/**
-		 * @copy org.apache.royale.core.IBead#strand
-		 *  
+		 *  The height of each row.
+		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9
+		 *  @productversion Royale 0.9.3
 		 */
-		override public function set strand(value:IStrand):void
+		public function get rowHeight():Number
 		{
-			_strand = value;
-			super.strand = value;
-			
-			MenuModel.menuList.push(_strand);
+			return _rowHeight;
 		}
 		
-		private static var _menuList:Array = [];
+		public function set rowHeight(value:Number):void
+		{
+			_rowHeight = value;
+			dispatchEvent(new Event("rowHeightChanged"));
+		}
+		
+		private var _separatorThickness:Number = 0;
 		
 		/**
-		 * The array of active IMenu instances. This list is maintained so that any of the
-		 * instances can close all of them. Imagine several cascading menus open the user
-		 * selects one of the items. That menu uses this array to close itself and the others.
-		 *  
+		 *  The distance between rows.
+		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9
+		 *  @productversion Royale 0.9.3
 		 */
-		public static function get menuList():Array
+		public function get separatorThickness():Number
 		{
-			return _menuList;
+			return _separatorThickness;
 		}
 		
-		/**
-		 * Empties the menuList.
-		 *  
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9
-		 */
-		public static function clearMenuList():void
+		public function set separatorThickness(value:Number):void
 		{
-			_menuList = [];
+			_separatorThickness = value;
+			dispatchEvent(new Event("separatorThicknessChanged"));
 		}
 		
+		private var _strand:IStrand;
+		
 		/**
-		 * Removes a specific menu from the menuList.
+		 *  @copy org.apache.royale.core.IBead#strand
 		 *  
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
-		 *  @productversion Royale 0.9
+		 *  @productversion Royale 0.9.3
 		 */
-		public static function removeMenu(menu:Object):void
+		public function set strand(value:IStrand):void
 		{
-			for(var i:int=0; i < menuList.length; i++) {
-				if (menuList[i] == menu) {
-					menuList.splice(i,1);
-					break;
-				}
-			}
+			_strand = value;
 		}
 	}
-}
\ No newline at end of file
+}
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/RangeModel.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/RangeModel.as
new file mode 100644
index 0000000..ee9f173
--- /dev/null
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/RangeModel.as
@@ -0,0 +1,238 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.jewel.beads.models
+{
+	import org.apache.royale.core.IBead;
+	import org.apache.royale.core.IStrand;
+	import org.apache.royale.core.IRangeModel;
+	import org.apache.royale.events.Event;
+	import org.apache.royale.events.EventDispatcher;
+	import org.apache.royale.events.ValueChangeEvent;
+			
+	/**
+	 *  The RangeModel class bead defines a set of for a numeric range of values
+	 *  which includes a minimum, maximum, and current value.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion Royale 0.0
+	 */
+	public class RangeModel extends EventDispatcher implements IBead, IRangeModel
+	{
+		/**
+		 *  constructor.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function RangeModel()
+		{
+		}
+		
+		protected var _strand:IStrand;
+		
+		/**
+		 *  @copy org.apache.royale.core.IBead#strand
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+		}
+
+		private var _maximum:Number = 100;
+		
+		/**
+		 *  The maximum value for the range (defaults to 100).
+		 * 
+		 *  @copy org.apache.royale.core.IRangeModel#maximum
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get maximum():Number
+		{
+			return _maximum;
+		}
+		
+		public function set maximum(value:Number):void
+		{
+			if (value != _maximum)
+			{
+				_maximum = value;
+				if (_value > _maximum) _value = _maximum;
+				dispatchEvent(new Event("maximumChange"));
+			}
+		}
+		
+		private var _minimum:Number = 0;
+		
+		/**
+		 *  The minimum value for the range (defaults to 0).
+		 * 
+		 *  @copy org.apache.royale.core.IRangeModel#minimum
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get minimum():Number
+		{
+			return _minimum;
+		}
+		
+		public function set minimum(value:Number):void
+		{
+			if (value != _minimum)
+			{
+				_minimum = value;
+				if (_value < _minimum) _value = _minimum;
+				dispatchEvent(new Event("minimumChange"));
+			}
+		}
+
+		private var _snapInterval:Number = 1;
+		
+		/**
+		 *  The modulus value for the range. 
+		 * 
+		 *  @copy org.apache.royale.core.IRangeModel#snapInterval
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get snapInterval():Number
+		{
+			return _snapInterval;
+		}
+		
+		public function set snapInterval(value:Number):void
+		{
+			if (value != _snapInterval)
+			{
+				_snapInterval = value;
+				dispatchEvent(new Event("snapIntervalChange"));
+			}
+			if(("" + value).indexOf(".") == -1)
+			{
+				_decimals = 0;
+			}
+			else
+			{
+				var str:String = "" + value;
+				_decimals = str.substr(str.indexOf(".")+1).length;
+			}
+		}
+		private var _decimals:int;
+		
+		private var _stepSize:Number = 1;
+		
+		/**
+		 *  The amount to adjust the value either up or down toward the edge of the range.
+		 * 
+		 *  @copy org.apache.royale.core.IRangeModel#stepSize
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get stepSize():Number
+		{
+			return _stepSize;
+		}
+		
+		public function set stepSize(value:Number):void
+		{
+			if (value != _stepSize)
+			{
+				_stepSize = value;
+				dispatchEvent(new Event("stepSizeChange"));
+			}
+		}
+		
+		private var _value:Number = 0;
+		
+		/**
+		 *  The current value of the range, between the minimum and maximum values. Attempting
+		 *  to set the value outside of the minimum-maximum range changes the value to still be
+		 *  within the range. Note that the value is adjusted by the stepSize.
+		 * 
+		 *  @copy org.apache.royale.core.IRangeModel#value
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get value():Number
+		{
+			return _value;
+		}
+		
+		public function set value(newValue:Number):void
+		{
+			if (newValue != _value)
+			{
+				// value must lie within the boundaries of minimum & maximum
+				// and be on a step interval, so the value is adjusted to 
+				// what is coming in.
+				newValue = Math.max(minimum, newValue);
+				newValue = Math.min(maximum, newValue);
+				var oldValue:Number = _value;
+				_value = snap(newValue);
+				dispatchEvent(ValueChangeEvent.createUpdateEvent(_strand, "value", oldValue, _value));
+			}
+		}
+		
+		/**
+		 * @private
+		 */
+		protected function snap(value:Number):Number
+		{
+			var si:Number = snapInterval;
+			var n:Number = Math.round((value - minimum) / si) * si + minimum;
+			if(_decimals)
+				n = Number(n.toFixed(_decimals));
+			if (value > 0)
+			{
+				if (value - n < n + si - value)
+					return n;
+				return n + si;
+				
+			}
+			if (value - n > n + si - value)
+				return n + si;
+			return n;
+		}
+		
+	}
+}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ComboBoxModel.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/ScrollBarModel.as
similarity index 57%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ComboBoxModel.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/ScrollBarModel.as
index 2f8f50c..fd9afa0 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ComboBoxModel.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/ScrollBarModel.as
@@ -16,85 +16,83 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.models
+package org.apache.royale.jewel.beads.models
 {
-	import org.apache.royale.core.IBead;
-	import org.apache.royale.core.IComboBoxModel;
+    import org.apache.royale.jewel.beads.models.RangeModel;
+	import org.apache.royale.core.IScrollBarModel;
 	import org.apache.royale.events.Event;
-			
+		
 	/**
-	 *  The ComboBoxModel class bead extends org.apache.royale.html.beads.models.ArraySelectionModel 
-	 *  and adds the text being displayed by the org.apache.royale.html.ComboBox's input field.
-	 *  
+	 *  The ScrollBarModel class bead extends the org.apache.royale.html.beads.models.RangeModel 
+	 *  and adds page size and page step sizes.
+	 *
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.0
 	 */
-	public class ComboBoxModel extends ArraySelectionModel implements IBead, IComboBoxModel
+	public class ScrollBarModel extends RangeModel implements IScrollBarModel
 	{
 		/**
 		 *  constructor.
-		 *  
+		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.0
 		 */
-		public function ComboBoxModel()
+		public function ScrollBarModel()
 		{
 		}
-
-		private var _text:String;
+		
+		private var _pageSize:Number;
 		
 		/**
-		 *  The string to display in the org.apache.royale.html.ComboBox input field.
-		 * 
-		 *  @copy org.apache.royale.core.IComboBoxModel#text
-		 *  
+		 *  The amount represented by the thumb control of the org.apache.royale.html.ScrollBar.
+		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.0
 		 */
-		public function get text():String
+		public function get pageSize():Number
 		{
-			return _text;
+			return _pageSize;
 		}
 		
-		public function set text(value:String):void
+		public function set pageSize(value:Number):void
 		{
-			if (value != _text)
+			if (value != _pageSize)
 			{
-				_text = value;
-				dispatchEvent(new Event("textChange"));
+				_pageSize = value;
+				dispatchEvent(new Event("pageSizeChange"));
 			}
 		}
-		
-		private var _html:String;
+				
+		private var _pageStepSize:Number;
 		
 		/**
-		 *  The HTML string to display in the org.apache.royale.html.ComboBox input field.
-		 * 
-		 *  @copy org.apache.royale.core.IComboBoxModel#html
-		 *  
+		 *  The amount to adjust the org.apache.royale.html.ScrollBar if the scroll bar's 
+		 *  track area is selected.
+		 *
 		 *  @langversion 3.0
 		 *  @playerversion Flash 10.2
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.0
 		 */
-		public function get html():String
+		public function get pageStepSize():Number
 		{
-			return _html;
+			return _pageStepSize;
 		}
 		
-		public function set html(value:String):void
+		public function set pageStepSize(value:Number):void
 		{
-			if (value != _html)
+			if (value != _pageStepSize)
 			{
-				_html = value;
-				dispatchEvent(new Event("htmlChange"));
+				_pageStepSize = value;
+				dispatchEvent(new Event("pageStepSizeChange"));
 			}
 		}
+		
 	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ArraySelectionModel.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/SingleSelectionCollectionViewModel.as
similarity index 73%
rename from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ArraySelectionModel.as
rename to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/SingleSelectionCollectionViewModel.as
index ad5a1f6..7035a33 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/models/ArraySelectionModel.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/SingleSelectionCollectionViewModel.as
@@ -16,64 +16,63 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads.models
+package org.apache.royale.jewel.beads.models
 {
+	import org.apache.royale.collections.ICollectionView;
 	import org.apache.royale.core.IRollOverModel;
 	import org.apache.royale.core.ISelectionModel;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.events.Event;
 	import org.apache.royale.events.EventDispatcher;
-			
+
     /**
-     *  The ArraySelectionModel class is a selection model for
-     *  a dataProvider that is an array. It assumes that items
-     *  can be fetched from the dataProvider
-     *  dataProvider[index].  Other selection models
-     *  would support other kinds of data providers.
-     *  
+     *  The SingleSelectionCollectionViewModel class is a selection model for
+     *  a dataProvider that is an ICollectionView. It assumes that items
+     *  can be fetched from the dataProvider using dataProvider.getItemAt(index).
+     *
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
-     *  @productversion Royale 0.0
+     *  @productversion Royale 0.9
      */
-	public class ArraySelectionModel extends EventDispatcher implements ISelectionModel, IRollOverModel
+	public class SingleSelectionCollectionViewModel extends EventDispatcher implements ISelectionModel, IRollOverModel
 	{
         /**
          *  Constructor.
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9
          */
-		public function ArraySelectionModel()
+		public function SingleSelectionCollectionViewModel()
 		{
 		}
 
 		private var _strand:IStrand;
-		
+
         /**
          *  @copy org.apache.royale.core.IBead#strand
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9
          */
 		public function set strand(value:IStrand):void
 		{
 			_strand = value;
 		}
-		
-		private var _dataProvider:Object;
-        
+
+		private var _dataProvider:ICollectionView;
+
         /**
          *  @copy org.apache.royale.core.ISelectionModel#dataProvider
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9
          */
 		public function get dataProvider():Object
 		{
@@ -82,16 +81,17 @@ package org.apache.royale.html.beads.models
 
         /**
          *  @private
+		 *  @royaleignorecoercion org.apache.royale.collections.ICollectionView
          */
 		public function set dataProvider(value:Object):void
 		{
-			if (value == _dataProvider) return;
-			
-			_dataProvider = value;
+            if (value == _dataProvider) return;
+
+            _dataProvider = value as ICollectionView;
 			if(!_dataProvider || _selectedIndex >= _dataProvider.length)
 				_selectedIndex = -1;
-			
-			_selectedItem = _selectedIndex == -1 ? null : _dataProvider[_selectedIndex];
+            
+			_selectedItem = _selectedIndex == -1 ? null : _dataProvider.getItemAt(_selectedIndex);
 			
 			dispatchEvent(new Event("dataProviderChanged"));
 		}
@@ -99,14 +99,14 @@ package org.apache.royale.html.beads.models
 		private var _selectedIndex:int = -1;
 		private var _rollOverIndex:int = -1;
 		private var _labelField:String = null;
-		
+
         /**
          *  @copy org.apache.royale.core.ISelectionModel#labelField
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9
          */
 		public function get labelField():String
 		{
@@ -123,14 +123,14 @@ package org.apache.royale.html.beads.models
 				dispatchEvent(new Event("labelFieldChanged"));
 			}
 		}
-		
+
         /**
          *  @copy org.apache.royale.core.ISelectionModel#selectedIndex
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9
          */
 		public function get selectedIndex():int
 		{
@@ -143,19 +143,19 @@ package org.apache.royale.html.beads.models
 		public function set selectedIndex(value:int):void
 		{
             if (value == _selectedIndex) return;
-            
+
 			_selectedIndex = value;
-			_selectedItem = (value == -1 || _dataProvider == null) ? null : (value < _dataProvider.length) ? _dataProvider[value] : null;
-			dispatchEvent(new Event("selectedIndexChanged"));			
+			_selectedItem = (value == -1 || _dataProvider == null) ? null : (value < _dataProvider.length) ? _dataProvider.getItemAt(value) : null;
+			dispatchEvent(new Event("selectedIndexChanged"));
 		}
-		
+
         /**
          *  @copy org.apache.royale.core.IRollOverModel#rollOverIndex
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9
          */
 		public function get rollOverIndex():int
 		{
@@ -167,19 +167,21 @@ package org.apache.royale.html.beads.models
          */
 		public function set rollOverIndex(value:int):void
 		{
-			_rollOverIndex = value;
-			dispatchEvent(new Event("rollOverIndexChanged"));			
+			if (value != _rollOverIndex) {
+				_rollOverIndex = value;
+				dispatchEvent(new Event("rollOverIndexChanged"));
+			}
 		}
-		
+
 		private var _selectedItem:Object;
-		
+
         /**
          *  @copy org.apache.royale.core.ISelectionModel#selectedItem
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9
          */
 		public function get selectedItem():Object
 		{
@@ -192,31 +194,31 @@ package org.apache.royale.html.beads.models
 		public function set selectedItem(value:Object):void
 		{
             if (value == _selectedItem) return;
-            
-			_selectedItem = value;	
+
+			_selectedItem = value;
 			var n:int = _dataProvider.length;
 			for (var i:int = 0; i < n; i++)
 			{
-				if (_dataProvider[i] == value)
+				if (_dataProvider.getItemAt(i) == value)
 				{
 					_selectedIndex = i;
 					break;
 				}
 			}
-			dispatchEvent(new Event("selectedItemChanged"));			
+			dispatchEvent(new Event("selectedItemChanged"));
 			dispatchEvent(new Event("selectedIndexChanged"));
 		}
-		
+
 		private var _selectedString:String;
-		
+
         /**
          *  An alternative to selectedItem for strongly typing the
          *  the selectedItem if the Array is an Array of Strings.
-         *  
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10.2
          *  @playerversion AIR 2.6
-         *  @productversion Royale 0.0
+         *  @productversion Royale 0.9
          */
 		public function get selectedString():String
 		{
@@ -232,14 +234,14 @@ package org.apache.royale.html.beads.models
 			var n:int = _dataProvider.length;
 			for (var i:int = 0; i < n; i++)
 			{
-				if (String(_dataProvider[i]) == value)
+				if (String(_dataProvider.getItemAt(i)) == value)
 				{
 					_selectedIndex = i;
 					break;
 				}
 			}
-			dispatchEvent(new Event("selectedItemChanged"));			
-			dispatchEvent(new Event("selectedIndexChanged"));			
+			dispatchEvent(new Event("selectedItemChanged"));
+			dispatchEvent(new Event("selectedIndexChanged"));
 		}
 	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SingleLineBorderBead.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/TextModel.as
similarity index 52%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SingleLineBorderBead.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/TextModel.as
index f239d73..b800d18 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/SingleLineBorderBead.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/TextModel.as
@@ -16,30 +16,28 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
-{
-	import flash.display.Graphics;
-
+package org.apache.royale.jewel.beads.models
+{	
 	import org.apache.royale.core.IBead;
-	import org.apache.royale.core.ILayoutChild;
-	import org.apache.royale.core.IStatesObject;
 	import org.apache.royale.core.IStrand;
-	import org.apache.royale.core.UIBase;
-	import org.apache.royale.core.ValuesManager;
+	import org.apache.royale.core.ITextModel;
 	import org.apache.royale.events.Event;
+	import org.apache.royale.events.EventDispatcher;
 	import org.apache.royale.events.IEventDispatcher;
-	import org.apache.royale.utils.CSSBorderUtils;
-
+		
     /**
-     *  The SingleLineBorderBead class draws a single line solid border.
-     *  The color and thickness can be specified in CSS.
+     *  The TextModel class is most basic data model for a
+     *  component that displays text.  All Royale components
+     *  that display text should also support HTML, although
+     *  the Flash Player implementations may only support
+     *  a subset of HTML. 
      *  
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.0
      */
-	public class SingleLineBorderBead implements IBead, IBorderBead, IGraphicsDrawing
+	public class TextModel extends EventDispatcher implements IBead, ITextModel
 	{
         /**
          *  Constructor.
@@ -49,7 +47,7 @@ package org.apache.royale.html.beads
          *  @playerversion AIR 2.6
          *  @productversion Royale 0.0
          */
-		public function SingleLineBorderBead()
+		public function TextModel()
 		{
 		}
 		
@@ -66,35 +64,64 @@ package org.apache.royale.html.beads
 		public function set strand(value:IStrand):void
 		{
 			_strand = value;
-            IEventDispatcher(value).addEventListener("heightChanged", changeHandler);
-            IEventDispatcher(value).addEventListener("widthChanged", changeHandler);
-			IEventDispatcher(value).addEventListener("sizeChanged", changeHandler);
-			IEventDispatcher(value).addEventListener("initComplete", changeHandler);
-			IEventDispatcher(value).addEventListener("layoutComplete", changeHandler);
-			var ilc:ILayoutChild = value as ILayoutChild;
-			if (ilc)
+		}
+
+		private var _text:String;
+
+        [Bindable("textChange")]
+        /**
+         *  @copy org.apache.royale.core.ITextModel#text
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.0
+         */
+        public function get text():String
+		{
+			return _text;
+		}
+		
+        /**
+         *  @private
+         */
+		public function set text(value:String):void
+		{
+            if (value == null)
+                value = "";
+			if (value != _text)
 			{
-				if (!isNaN(ilc.explicitWidth) && !isNaN(ilc.explicitHeight))
-				{
-					changeHandler(null);
-				}
+				_text = value;
+				dispatchEvent(new Event("textChange"));
 			}
 		}
-		        
-		protected function changeHandler(event:Event):void
+		
+		private var _html:String;
+        
+        [Bindable("htmlChange")]
+        /**
+         *  @copy org.apache.royale.core.ITextModel#html
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.0
+         */
+		public function get html():String
+		{
+			return _html;
+		}
+		
+        /**
+         *  @private
+         */
+		public function set html(value:String):void
 		{
-            var host:UIBase = UIBase(_strand);
-            var g:Graphics = host.graphics;
-            var w:Number = host.width;
-            var h:Number = host.height;
-            var state:String;
-            if (host is IStatesObject)
-                state = IStatesObject(host).currentState;
-			
-			var gd:IGraphicsDrawing = _strand.getBeadByType(IGraphicsDrawing) as IGraphicsDrawing;
-			if( this == gd ) g.clear();
-            
-            CSSBorderUtils.draw(g, w, h, host, state, false, false);
+			if (value != _html)
+			{
+				_html = value;
+				dispatchEvent(new Event("htmlChange"));
+			}
 		}
 	}
 }
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/TitleBarModel.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/TitleBarModel.as
new file mode 100644
index 0000000..d238a4d
--- /dev/null
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/models/TitleBarModel.as
@@ -0,0 +1,136 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.jewel.beads.models
+{
+	import org.apache.royale.core.IBead;
+	import org.apache.royale.core.IStrand;
+	import org.apache.royale.core.ITitleBarModel;
+	import org.apache.royale.events.Event;
+	import org.apache.royale.events.EventDispatcher;
+	
+	/**
+	 *  The TitleBarModel class bead holds the values for the org.apache.royale.html.TitleBar's 
+	 *  properties.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion Royale 0.0
+	 */
+	public class TitleBarModel extends EventDispatcher implements IBead, ITitleBarModel
+	{
+		public function TitleBarModel()
+		{
+			super();
+		}
+		
+		private var _strand:IStrand;
+		
+		/**
+		 *  @copy org.apache.royale.core.IBead#strand
+		 *  
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+		}
+		
+		private var _title:String;
+		
+        [Bindable("titleChange")]
+		/**
+		 *  The string title for the org.apache.royale.html.TitleBar.
+		 * 
+		 *  @copy org.apache.royale.core.ITitleBarModel#title
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get title():String
+		{
+			return _title;
+		}
+		
+		public function set title(value:String):void
+		{
+			if( value != _title ) {
+				_title = value;
+				dispatchEvent( new Event('titleChange') );
+			}
+		}
+		
+		private var _htmlTitle:String;
+		
+        [Bindable("htmlTitleChange")]
+		/**
+		 *  The HTML string for the title.
+		 * 
+		 *  @copy org.apache.royale.core.ITitleBarModel#htmlTitle
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get htmlTitle():String
+		{
+			return _htmlTitle;
+		}
+		
+		public function set htmlTitle(value:String):void
+		{
+			if( value != _htmlTitle ) {
+				_htmlTitle = value;
+				dispatchEvent( new Event('htmlTitleChange') );
+			}
+		}
+		
+		private var _showCloseButton:Boolean = false;
+		
+        [Bindable("showCloseButtonChange")]
+		/**
+		 *  Whether or not to show a close button.
+		 * 
+		 *  @copy org.apache.royale.core.ITitleBarModel#showCloseButton
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion Royale 0.0
+		 */
+		public function get showCloseButton():Boolean
+		{
+			return _showCloseButton;
+		}
+		
+		public function set showCloseButton(value:Boolean):void
+		{
+			if( value != _showCloseButton ) {
+				_showCloseButton = value;
+				dispatchEvent( new Event('showCloseButtonChange') );
+			}
+		}
+	}
+}
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/AlertView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/AlertView.as
index 974dbfc..21ea1ed 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/AlertView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/AlertView.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.beads.views
 {
+    import org.apache.royale.core.beads.GroupView;
     import org.apache.royale.core.IAlertModel;
     import org.apache.royale.core.IBead;
     import org.apache.royale.core.IBorderPaddingMarginValuesImpl;
@@ -30,20 +31,20 @@ package org.apache.royale.jewel.beads.views
     import org.apache.royale.events.Event;
     import org.apache.royale.events.IEventDispatcher;
     import org.apache.royale.events.MouseEvent;
-    import org.apache.royale.html.Group;
-    import org.apache.royale.html.beads.GroupView;
+    import org.apache.royale.jewel.Group;
     import org.apache.royale.jewel.Alert;
     import org.apache.royale.jewel.Label;
     import org.apache.royale.jewel.Button;
     import org.apache.royale.jewel.TitleBar;
     import org.apache.royale.jewel.ControlBar;
-	import org.apache.royale.jewel.beads.layouts.HorizontalLayoutSpaceBetween;
 	import org.apache.royale.jewel.beads.views.AlertTitleBarView;
 	
+	import org.apache.royale.jewel.beads.layouts.HorizontalLayoutSpaceBetween;
+	
     COMPILE::SWF
 	{
-        import org.apache.royale.html.beads.IBackgroundBead;
-        import org.apache.royale.html.beads.IBorderBead;
+        import org.apache.royale.core.beads.IBackgroundBead;
+        import org.apache.royale.core.beads.IBorderBead;
         import org.apache.royale.core.IMeasurementBead;
         import org.apache.royale.core.ValuesManager;
         import org.apache.royale.utils.loadBeadFromValuesManager;
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as
index 2582856..1a810d7 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/DropDownListView.as
@@ -38,7 +38,7 @@ package org.apache.royale.jewel.beads.views
 	import org.apache.royale.events.IEventDispatcher;
 	import org.apache.royale.utils.SolidBorderUtil;
 	import org.apache.royale.utils.UIUtils;
-    import org.apache.royale.html.beads.IDropDownListView;
+    import org.apache.royale.core.beads.IDropDownListView;
     
     /**
      *  The DropDownListView class is the default view for
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/JewelLabelViewBead.mxml b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/JewelLabelViewBead.mxml
index d3edc75..bf69ea5 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/JewelLabelViewBead.mxml
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/JewelLabelViewBead.mxml
@@ -23,7 +23,7 @@ limitations under the License.
 				  
     <fx:Script>
         <![CDATA[
-            import org.apache.royale.html.beads.models.TextModel;
+            import org.apache.royale.jewel.beads.models.TextModel;
 
             // private function clickHandler():void
             // {
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ListView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ListView.as
index ba58a34..b484ef1 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ListView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/ListView.as
@@ -18,13 +18,13 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.beads.views
 {
+	import org.apache.royale.core.beads.views.DataContainerView;
 	import org.apache.royale.core.IBead;
 	import org.apache.royale.core.IRollOverModel;
 	import org.apache.royale.core.ISelectableItemRenderer;
 	import org.apache.royale.core.ISelectionModel;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.events.Event;
-	import org.apache.royale.html.beads.DataContainerView;
 
 	/**
 	 *  The ListView class creates the visual elements of the org.apache.royale.jewel.List
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SliderView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SliderView.as
index 5e95dd1..0d87186 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SliderView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/SliderView.as
@@ -23,7 +23,7 @@ package org.apache.royale.jewel.beads.views
 		import flash.display.Sprite;
 	}
 	
-    import org.apache.royale.html.beads.ISliderView;
+    import org.apache.royale.jewel.beads.controls.slider.ISliderView;
     import org.apache.royale.core.BeadViewBase;
     import org.apache.royale.core.IBead;
     import org.apache.royale.core.IBeadModel;
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/TextFieldView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/TextFieldView.as
index f0506fd..3208904 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/TextFieldView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/views/TextFieldView.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.beads.views
 {
-    import org.apache.royale.html.beads.TextFieldViewBase
+    import org.apache.royale.core.beads.TextFieldViewBase
 	import flash.text.TextFieldType;
 	
     /**
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
index 2410da7..d958422 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ListItemRenderer.as
@@ -18,15 +18,15 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.itemRenderers
 {
+	import org.apache.royale.core.MXMLItemRenderer;
+
     COMPILE::JS
     {
         import org.apache.royale.core.WrappedHTMLElement;
 		import org.apache.royale.html.util.addElementToWrapper;
         import org.apache.royale.utils.cssclasslist.toggleStyle;
     }
-
-	import org.apache.royale.html.supportClasses.MXMLItemRenderer;
-    
+	
 	/**
 	 *  The ListItemRenderer defines the basic Item Renderer for a Jewel List Component.
 	 *
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/CheckBoxIcon.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/CheckBoxIcon.as
new file mode 100644
index 0000000..2e0e737
--- /dev/null
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/CheckBoxIcon.as
@@ -0,0 +1,86 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.royale.jewel.supportClasses
+{
+	COMPILE::JS {
+        import org.apache.royale.core.WrappedHTMLElement;
+    }
+
+	public class CheckBoxIcon
+	{
+		public function CheckBoxIcon()
+		{
+			COMPILE::JS {
+				createElement();
+			}
+
+			className = 'CheckBoxIcon';
+		}
+
+		COMPILE::JS {
+            public var element:WrappedHTMLElement;
+            public var positioner:WrappedHTMLElement;
+		}
+
+		private var _className:String;
+
+		public function get className():String
+		{
+			return _className;
+		}
+		public function set className(value:String):void
+		{
+			_className = value;
+
+			COMPILE::JS {
+				element.className = value;
+			}
+		}
+
+		private var _id:String;
+
+		public function get id():String
+		{
+			return _id;
+		}
+		public function set id(value:String):void
+		{
+			_id = value;
+
+			COMPILE::JS {
+				element.id = value;
+			}
+		}
+
+		/**
+		 * @royaleignorecoercion org.apache.royale.core.WrappedHTMLElement
+		 * @royaleignorecoercion HTMLInputElement
+		 * @royaleignorecoercion Text
+		 */
+		COMPILE::JS
+ 		protected function createElement():WrappedHTMLElement
+		{
+			var input:HTMLInputElement = document.createElement('input') as HTMLInputElement;
+			input.type = 'checkbox';
+
+			element = input as WrappedHTMLElement;
+			return element;
+		}
+	}
+}
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultilineTextFieldView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/DropDownListList.as
similarity index 64%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultilineTextFieldView.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/DropDownListList.as
index 32e59e3..fcb845d 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/MultilineTextFieldView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/DropDownListList.as
@@ -16,22 +16,35 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.jewel.supportClasses
 {
-	import flash.text.TextFieldType;
-	
+    import org.apache.royale.core.IPopUp;
+    import org.apache.royale.jewel.List;
+    
+    //--------------------------------------
+    //  Events
+    //--------------------------------------
+    
     /**
-     *  The TextFieldView class is the default view for
-     *  the org.apache.royale.html.Label class.
-     *  It displays text using a TextField, so there is no
-     *  right-to-left text support in this view.
+     *  @copy org.apache.royale.core.ISelectionModel#change
      *  
      *  @langversion 3.0
      *  @playerversion Flash 10.2
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.0
      */
-	public class MultilineTextFieldView extends TextFieldViewBase
+    [Event(name="change", type="org.apache.royale.events.Event")]
+    
+    /**
+     *  The DropDownListList class is the List class used internally
+     *  by DropDownList as the dropdown/popup.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.0
+     */
+	public class DropDownListList extends List implements IPopUp
 	{
         /**
          *  Constructor.
@@ -41,16 +54,9 @@ package org.apache.royale.html.beads
          *  @playerversion AIR 2.6
          *  @productversion Royale 0.0
          */
-		public function MultilineTextFieldView()
+		public function DropDownListList()
 		{
 			super();
-			
-			textField.selectable = false;
-			textField.type = TextFieldType.DYNAMIC;
-			textField.mouseEnabled = false;
-			textField.autoSize = "left";
-            textField.multiline = true;
-            textField.wordWrap = true;
 		}
 	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/HScrollBar.as
similarity index 73%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/HScrollBar.as
index 54a8396..3f7e985 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/HScrollBar.as
@@ -16,22 +16,22 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.jewel.supportClasses
 {
-    
+	import org.apache.royale.core.IChrome;
+	import org.apache.royale.core.IViewportScroller;
 	
 	/**
-	 *  The TableCellView class is the view bead for TableCell. It has no function
-	 *  on the JS platform, but with SWF, it prevents the cell from shrinking
-	 *  to fit its content.
-	 *  
-	 *  @viewbead
+	 *  The ScrollBar class represents either a vertical or horizontal control
+	 *  that allows the user to quickly scan through a component that does not
+	 *  wholly fit within its container.
+	 *
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.0
 	 */
-	public class TableCellView extends GroupView
+	public class HScrollBar extends ScrollBar implements IChrome, IViewportScroller
 	{
 		/**
 		 *  constructor.
@@ -41,14 +41,9 @@ package org.apache.royale.html.beads
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.0
 		 */
-		public function TableCellView()
+		public function HScrollBar()
 		{
 			super();
-		}
-		
-		override public function afterLayout():void
-		{
-			// do nothing for TableCell
-		}
-	}
+		}		
+   	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/ScrollBar.as
similarity index 72%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/ScrollBar.as
index 54a8396..9a20ba5 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/ScrollBar.as
@@ -16,22 +16,23 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.jewel.supportClasses
 {
-    
+	import org.apache.royale.core.UIBase;
+	import org.apache.royale.core.IChrome;
+	import org.apache.royale.core.IViewportScroller;
 	
 	/**
-	 *  The TableCellView class is the view bead for TableCell. It has no function
-	 *  on the JS platform, but with SWF, it prevents the cell from shrinking
-	 *  to fit its content.
-	 *  
-	 *  @viewbead
+	 *  The ScrollBar class represents either a vertical or horizontal control
+	 *  that allows the user to quickly scan through a component that does not
+	 *  wholly fit within its container.
+	 *
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.0
 	 */
-	public class TableCellView extends GroupView
+	public class ScrollBar extends UIBase implements IChrome, IViewportScroller
 	{
 		/**
 		 *  constructor.
@@ -41,14 +42,9 @@ package org.apache.royale.html.beads
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.0
 		 */
-		public function TableCellView()
+		public function ScrollBar()
 		{
 			super();
-		}
-		
-		override public function afterLayout():void
-		{
-			// do nothing for TableCell
-		}
-	}
+		}		
+   	}
 }
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ScrollingViewport.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/ScrollingViewport.as
similarity index 96%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ScrollingViewport.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/ScrollingViewport.as
index 4840770..b4da477 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/supportClasses/ScrollingViewport.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/ScrollingViewport.as
@@ -16,25 +16,21 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.supportClasses
+package org.apache.royale.jewel.supportClasses
 {
+	import org.apache.royale.core.supportClasses.Viewport;
 	import org.apache.royale.core.IBead;
-	import org.apache.royale.core.IBeadLayout;
     import org.apache.royale.core.IBorderPaddingMarginValuesImpl;
 	import org.apache.royale.core.IContainer;
-	import org.apache.royale.core.IContentViewHost;
-	import org.apache.royale.core.IParentIUIBase;
 	import org.apache.royale.core.IStrand;
 	import org.apache.royale.core.IUIBase;
 	import org.apache.royale.core.IScrollingViewport;
-	import org.apache.royale.core.IViewportModel;
     import org.apache.royale.core.layout.EdgeData;
     import org.apache.royale.core.ValuesManager;
     COMPILE::SWF
     {
         import org.apache.royale.core.IViewportScroller;
-		import org.apache.royale.html.beads.ScrollBarView;
-		import org.apache.royale.html.beads.models.ScrollBarModel;
+		import org.apache.royale.jewel.beads.models.ScrollBarModel;
 		import flash.geom.Rectangle;
 		import org.apache.royale.geom.Rectangle;
     }
diff --git a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/TextInputBase.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/TextInputBase.as
index d41c9e4..f04cd6a 100644
--- a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/TextInputBase.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/TextInputBase.as
@@ -17,10 +17,10 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.jewel.supportClasses
 {
+    import org.apache.royale.core.UIBase;
 	import org.apache.royale.events.Event;
-	import org.apache.royale.html.TextInput;
-    
     import org.apache.royale.jewel.supportClasses.ITextInput;
+    import org.apache.royale.core.ITextModel;
     
     COMPILE::JS
     {
@@ -31,6 +31,16 @@ package org.apache.royale.jewel.supportClasses
     }
     
     /**
+     *  Dispatched when the user changes the text.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Royale 0.9.3
+     */
+	[Event(name="change", type="org.apache.royale.events.Event")]
+
+    /**
      *  The TextInputBase class is the base class for TextInput and TextArea Jewel controls
      *  
      *  @langversion 3.0
@@ -38,7 +48,7 @@ package org.apache.royale.jewel.supportClasses
      *  @playerversion AIR 2.6
      *  @productversion Royale 0.9.3
      */    
-	public class TextInputBase extends TextInput implements ITextInput
+	public class TextInputBase extends UIBase implements ITextInput
 	{
         /**
          *  Constructor.
@@ -51,9 +61,109 @@ package org.apache.royale.jewel.supportClasses
 		public function TextInputBase()
 		{
 			super();
+
+            COMPILE::SWF
+            {
+                model.addEventListener("textChange", textChangeHandler);
+            }
+		}
+
+        /**
+         *  @copy org.apache.royale.html.Label#text
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         *  @royaleignorecoercion HTMLInputElement
+         */
+		[Bindable(event="change")]
+		public function get text():String
+		{
+            COMPILE::SWF
+            {
+                return ITextModel(model).text;
+            }
+            COMPILE::JS
+            {
+                return (element as HTMLInputElement).value;
+            }
+		}
+
+        /**
+         *  @private
+         *  @royaleignorecoercion HTMLInputElement
+         */
+		public function set text(value:String):void
+		{
+            COMPILE::SWF
+            {
+                inSetter = true;
+                ITextModel(model).text = value;
+                inSetter = false;
+            }
+            COMPILE::JS
+            {
+                (element as HTMLInputElement).value = value;
+                dispatchEvent(new Event('textChange'));
+            }
+		}
+
+        /**
+         *  @copy org.apache.royale.html.Label#html
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+         *  @royaleignorecoercion HTMLInputElement
+         */
+		[Bindable(event="change")]
+		public function get html():String
+		{
+            COMPILE::SWF
+            {
+                return ITextModel(model).html;
+            }
+            COMPILE::JS
+            {
+                return (element as HTMLInputElement).value;
+            }
+		}
+
+        /**
+         *  @private
+         *  @royaleignorecoercion HTMLInputElement
+         */
+		public function set html(value:String):void
+		{
+            COMPILE::SWF
+            {
+                ITextModel(model).html = value;
+            }
+            COMPILE::JS
+            {
+                (element as HTMLInputElement).value = value;
+                dispatchEvent(new Event('textChange'));
+            }
+		}
+
+        private var inSetter:Boolean;
+
+        /**
+		 *  dispatch change event in response to a textChange event
+		 *
+		 *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion Royale 0.9.3
+		 */
+		public function textChangeHandler(event:Event):void
+		{
+            if (!inSetter)
+                dispatchEvent(new Event(Event.CHANGE));
 		}
 
-        
         COMPILE::JS
         private var _textNode:Text;
 
diff --git a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/VScrollBar.as
similarity index 73%
copy from frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
copy to frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/VScrollBar.as
index 54a8396..1df9898 100644
--- a/frameworks/projects/Basic/src/main/royale/org/apache/royale/html/beads/TableCellView.as
+++ b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/supportClasses/VScrollBar.as
@@ -16,22 +16,22 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package org.apache.royale.html.beads
+package org.apache.royale.jewel.supportClasses
 {
-    
+	import org.apache.royale.core.IChrome;
+	import org.apache.royale.core.IViewportScroller;
 	
 	/**
-	 *  The TableCellView class is the view bead for TableCell. It has no function
-	 *  on the JS platform, but with SWF, it prevents the cell from shrinking
-	 *  to fit its content.
-	 *  
-	 *  @viewbead
+	 *  The ScrollBar class represents either a vertical or horizontal control
+	 *  that allows the user to quickly scan through a component that does not
+	 *  wholly fit within its container.
+	 *
 	 *  @langversion 3.0
 	 *  @playerversion Flash 10.2
 	 *  @playerversion AIR 2.6
 	 *  @productversion Royale 0.0
 	 */
-	public class TableCellView extends GroupView
+	public class VScrollBar extends ScrollBar implements IChrome, IViewportScroller
 	{
 		/**
 		 *  constructor.
@@ -41,14 +41,9 @@ package org.apache.royale.html.beads
 		 *  @playerversion AIR 2.6
 		 *  @productversion Royale 0.0
 		 */
-		public function TableCellView()
+		public function VScrollBar()
 		{
 			super();
-		}
-		
-		override public function afterLayout():void
-		{
-			// do nothing for TableCell
-		}
-	}
+		}		
+   	}
 }
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_alert.sass b/frameworks/projects/Jewel/src/main/sass/components/_alert.sass
index 5c368ab..10e6fe9 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_alert.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_alert.sass
@@ -121,11 +121,11 @@ $alert-modal-opacity: .5
         background-color: rgba(0, 0, 0, $alert-modal-opacity)
 
 j|Alert
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel")
+    IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.AlertModel")
     IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController")
     IBeadView:  ClassReference("org.apache.royale.jewel.beads.views.AlertView")
 
 @media -royale-swf	
     j|Alert
-        IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
-        IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead")
+        // --- IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
+        // --- IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead")
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_checkbox.sass b/frameworks/projects/Jewel/src/main/sass/components/_checkbox.sass
index 1af1146..d1c7438 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_checkbox.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_checkbox.sass
@@ -21,7 +21,7 @@
 
 @media -royale-swf
 	j|CheckBox
-		IBeadModel: ClassReference("org.apache.royale.html.beads.models.ToggleButtonModel")
+		// --- IBeadModel: ClassReference("org.apache.royale.html.beads.models.ToggleButtonModel")
 		IBeadView:  ClassReference("org.apache.royale.jewel.beads.views.CheckBoxView")
 		//font-size: 11px
 		//font-family: Arial
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_controlbar.sass b/frameworks/projects/Jewel/src/main/sass/components/_controlbar.sass
index 55e78ff..8777e0c 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_controlbar.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_controlbar.sass
@@ -23,12 +23,12 @@
     min-height: 34px
 
 j|ControlBar
-    IBeadView: ClassReference("org.apache.royale.html.beads.GroupView")
+    IBeadView: ClassReference("org.apache.royale.core.beads.GroupView")
     IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.HorizontalLayout")
 
 @media -royale-swf
     j|ControlBar
         IMeasurementBead: ClassReference("org.apache.royale.html.beads.ControlBarMeasurementBead")
-        IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
-        IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead")
+        // --- IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
+        // --- IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead")
         //border: 1px solid #333333
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_dropdownlist.sass b/frameworks/projects/Jewel/src/main/sass/components/_dropdownlist.sass
index 5b13361..4192c01 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_dropdownlist.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_dropdownlist.sass
@@ -23,9 +23,26 @@
 
 @media -royale-swf	
     j|DropDownList
-        IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel")
+        IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel")
         IBeadView: ClassReference("org.apache.royale.jewel.beads.views.DropDownListView")
-        IBeadController: ClassReference("org.apache.royale.html.beads.controllers.DropDownListController")
-        IPopUp: ClassReference("org.apache.royale.html.supportClasses.DropDownListList")
+        IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.DropDownListController")
+        IPopUp: ClassReference("org.apache.royale.jewel.supportClasses.DropDownListList")
+        // font-size: 11px
+        // font-family: Arial
+
+    j|DropDownListList
+        IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel")
+        //--- IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.TextItemRendererFactoryForArrayData")
+        IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory")
+        //--- IItemRenderer: ClassReference("org.apache.royale.core.supportClasses.StringItemRenderer")
+        //--- iBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
+        //--- iBorderBead: ClassReference('org.apache.royale.html.beads.SingleLineBorderBead')
+        //--- iBorderModel: ClassReference('org.apache.royale.html.beads.models.SingleLineBorderModel')
+        
+        // border-style: solid
+        // border-radius: 4px
+        // border-color: #333333
+        // border-width: 1px
+        // background-color: #FFFFFF
         // font-size: 11px
         // font-family: Arial
\ No newline at end of file
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass b/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
index a65da00..c321aef 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_itemRenderer.sass
@@ -23,4 +23,4 @@
 
 
 j|ListItemRenderer
-    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController")
\ No newline at end of file
+    IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController")
\ No newline at end of file
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_label.sass b/frameworks/projects/Jewel/src/main/sass/components/_label.sass
index 4938afe..427dcef 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_label.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_label.sass
@@ -21,7 +21,7 @@
 	white-space: nowrap
 
 j|Label
-	IBeadModel: ClassReference("org.apache.royale.html.beads.models.TextModel")
+	IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.TextModel")
 	//IMeasurementBead: ClassReference("org.apache.royale.html.beads.TextFieldLabelMeasurementBead")
 	//IBeadView: ClassReference("org.apache.royale.jewel.beads.views.JewelLabelViewBead")
 
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_list.sass b/frameworks/projects/Jewel/src/main/sass/components/_list.sass
index 734e1dd..89af014 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_list.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_list.sass
@@ -23,22 +23,22 @@
 
 j|List
     IBeadView:  ClassReference("org.apache.royale.jewel.beads.views.ListView")
-    IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController")
-    IBeadLayout: ClassReference("org.apache.royale.html.beads.layouts.VerticalLayout")
+    IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.ListSingleSelectionMouseController")
+    IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.VerticalLayout")
     IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory")
     IItemRenderer: ClassReference("org.apache.royale.jewel.itemRenderers.ListItemRenderer")
-    IViewport: ClassReference("org.apache.royale.html.supportClasses.ScrollingViewport")
-    IViewportModel: ClassReference("org.apache.royale.html.beads.models.ViewportModel")
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.SingleSelectionCollectionViewModel")
-    IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForCollectionView")
-    //IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel")
+    IViewport: ClassReference("org.apache.royale.jewel.supportClasses.ScrollingViewport")
+    IViewportModel: ClassReference("org.apache.royale.core.beads.models.ViewportModel")
+    IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.SingleSelectionCollectionViewModel")
+    IDataProviderItemRendererMapper: ClassReference("org.apache.royale.jewel.beads.DataItemRendererFactoryForCollectionView")
+    //IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel")
     //IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData")
 
 @media -royale-swf	
     j|List
-        iBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
-        iBorderBead: ClassReference('org.apache.royale.html.beads.SingleLineBorderBead')
-        iBorderModel: ClassReference('org.apache.royale.html.beads.models.SingleLineBorderModel')
-        IContentView: ClassReference("org.apache.royale.html.supportClasses.DataGroup")
+        //---iBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
+        //---iBorderBead: ClassReference('org.apache.royale.html.beads.SingleLineBorderBead')
+        //---iBorderModel: ClassReference('org.apache.royale.html.beads.models.SingleLineBorderModel')
+        IContentView: ClassReference("org.apache.royale.core.supportClasses.DataGroup")
         //font-size: 11px
         //font-family: Arial
\ No newline at end of file
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_radiobutton.sass b/frameworks/projects/Jewel/src/main/sass/components/_radiobutton.sass
index bac5b6a..a5471c4 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_radiobutton.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_radiobutton.sass
@@ -21,7 +21,7 @@
 
 @media -royale-swf
 	j|RadioButton
-		IBeadModel: ClassReference("org.apache.royale.html.beads.models.ValueToggleButtonModel")
+		// --- IBeadModel: ClassReference("org.apache.royale.html.beads.models.ValueToggleButtonModel")
 		IBeadView:  ClassReference("org.apache.royale.jewel.beads.views.RadioButtonView")
 		//font-size: 11px
 		//font-family: Arial
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_textinput.sass b/frameworks/projects/Jewel/src/main/sass/components/_textinput.sass
index f440985..fb459f5 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_textinput.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_textinput.sass
@@ -20,7 +20,7 @@
 .jewel.textinput
 
 j|TextInput
-	IBeadModel: ClassReference("org.apache.royale.html.beads.models.TextModel")
+	IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.TextModel")
 	//IBeadView: ClassReference("org.apache.royale.html.beads.TextInputWithBorderView")
 	//IBeadController: ClassReference("org.apache.royale.html.beads.controllers.EditableTextKeyboardController")
 
diff --git a/frameworks/projects/Jewel/src/main/sass/components/_titlebar.sass b/frameworks/projects/Jewel/src/main/sass/components/_titlebar.sass
index 49eca6d..873eae0 100644
--- a/frameworks/projects/Jewel/src/main/sass/components/_titlebar.sass
+++ b/frameworks/projects/Jewel/src/main/sass/components/_titlebar.sass
@@ -23,12 +23,12 @@
     min-height: 34px
 
 j|TitleBar
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.TitleBarModel")
+    IBeadModel: ClassReference("org.apache.royale.jewel.beads.models.TitleBarModel")
     IBeadLayout: ClassReference("org.apache.royale.jewel.beads.layouts.HorizontalLayout")
     IBeadView: ClassReference("org.apache.royale.jewel.beads.views.TitleBarView")
 
 @media -royale-swf
     j|TitleBar
-        IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead")
-        IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
+        // --- IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead")
+        // --- IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead")
         //border: 1px solid #333333
\ No newline at end of file
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/core/UIComponent.as b/frameworks/projects/MXRoyale/src/main/royale/mx/core/UIComponent.as
index 8f12f62..77855e2 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/core/UIComponent.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/core/UIComponent.as
@@ -61,7 +61,7 @@ import org.apache.royale.events.KeyboardEvent;
 import org.apache.royale.events.ValueChangeEvent;
 import org.apache.royale.geom.Point;
 import org.apache.royale.geom.Rectangle;
-import org.apache.royale.html.supportClasses.ContainerContentArea;
+import org.apache.royale.core.supportClasses.ContainerContentArea;
 import org.apache.royale.utils.PointUtils;
 import org.apache.royale.utils.loadBeadFromValuesManager;
 
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/skins/Border.as b/frameworks/projects/MXRoyale/src/main/royale/mx/skins/Border.as
index 4983254..aa1857d 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/mx/skins/Border.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/skins/Border.as
@@ -21,7 +21,7 @@ package mx.skins
 {
 
 import mx.core.EdgeMetrics;
-import org.apache.royale.html.supportClasses.Border;
+import org.apache.royale.core.supportClasses.Border;
 
 /**
  *  The Border class is an abstract base class for various classes that
@@ -39,7 +39,7 @@ import org.apache.royale.html.supportClasses.Border;
  *  @playerversion AIR 1.1
  *  @productversion Royale 0.9.3
  */
-public class Border extends org.apache.royale.html.supportClasses.Border 
+public class Border extends org.apache.royale.core.supportClasses.Border 
 {
 	//include "../core/Version.as";
 
diff --git a/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css b/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
index db5bf35..0363eaa 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
+++ b/frameworks/projects/MaterialDesignLite/src/main/resources/defaults.css
@@ -75,7 +75,7 @@ Slider
 List
 {
     IBeadView: ClassReference("org.apache.royale.mdl.beads.views.ListView");
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
     IBeadLayout: ClassReference(null); /*"org.apache.royale.html.beads.layouts.VerticalLayout"*/
     IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
     IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
@@ -85,7 +85,7 @@ List
 Table
 {
     IBeadView: ClassReference("org.apache.royale.mdl.beads.views.TableView");
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
     IBeadLayout: ClassReference(null); /*"org.apache.royale.html.beads.layouts.VerticalLayout"*/
     IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
     IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
@@ -95,7 +95,7 @@ Table
 Navigation
 {
     IBeadView: ClassReference("org.apache.royale.mdl.beads.views.ListView");
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
     IBeadLayout: ClassReference(null); /*"org.apache.royale.html.beads.layouts.VerticalLayout"*/
     IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
     IItemRendererClassFactory: ClassReference("org.apache.royale.core.ItemRendererClassFactory");
@@ -104,13 +104,13 @@ Navigation
 
 MenuItemRenderer
 {
-	IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ItemRendererMouseController");
+	IBeadController: ClassReference("org.apache.royale.core.beads.controllers.ItemRendererMouseController");
 }
 
 Menu
 {
     IBeadView: ClassReference("org.apache.royale.mdl.beads.views.ListView");
-    IBeadModel: ClassReference("org.apache.royale.html.beads.models.ArraySelectionModel");
+    IBeadModel: ClassReference("org.apache.royale.core.beads.models.ArraySelectionModel");
     IBeadLayout: ClassReference(null); /*"org.apache.royale.html.beads.layouts.VerticalLayout"*/
     IBeadController: ClassReference("org.apache.royale.html.beads.controllers.ListSingleSelectionMouseController");
     IDataProviderItemRendererMapper: ClassReference("org.apache.royale.html.beads.DataItemRendererFactoryForArrayData");
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsDataItemRendererFactoryForArrayListData.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsDataItemRendererFactoryForArrayListData.as
index c6b55ed..d05b693 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsDataItemRendererFactoryForArrayListData.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsDataItemRendererFactoryForArrayListData.as
@@ -27,7 +27,7 @@ package org.apache.royale.mdl.beads
 
     import org.apache.royale.events.IEventDispatcher;
     import org.apache.royale.html.beads.DataItemRendererFactoryForArrayList;
-    import org.apache.royale.html.supportClasses.DataItemRenderer;
+    import org.apache.royale.core.DataItemRenderer;
     import org.apache.royale.mdl.beads.models.ITabModel;
     import org.apache.royale.mdl.supportClasses.ITabItemRenderer;
     import org.apache.royale.events.Event;
@@ -72,7 +72,7 @@ package org.apache.royale.mdl.beads
          * @royaleignorecoercion org.apache.royale.core.IList
          * @royaleignorecoercion org.apache.royale.core.IListPresentationModel
          * @royaleignorecoercion org.apache.royale.events.IEventDispatcher
-         * @royaleignorecoercion org.apache.royale.html.supportClasses.DataItemRenderer
+         * @royaleignorecoercion org.apache.royale.core.DataItemRenderer
          * @royaleignorecoercion org.apache.royale.mdl.supportClasses.ITabItemRenderer
          */
         override protected function dataProviderChangeHandler(event:Event):void
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererFactoryForArrayData.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererFactoryForArrayData.as
index 1c4265c..da15186 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererFactoryForArrayData.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/TabsItemRendererFactoryForArrayData.as
@@ -30,7 +30,7 @@ package org.apache.royale.mdl.beads
     import org.apache.royale.events.EventDispatcher;
     import org.apache.royale.events.IEventDispatcher;
     import org.apache.royale.events.ItemRendererEvent;
-    import org.apache.royale.html.beads.IListView;
+    import org.apache.royale.core.IListView;
     import org.apache.royale.mdl.beads.models.ITabModel;
     import org.apache.royale.events.Event;
     import org.apache.royale.mdl.supportClasses.ITabItemRenderer;
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/models/DropDownListModel.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/models/DropDownListModel.as
index b23df72..79c0cb5 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/models/DropDownListModel.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/models/DropDownListModel.as
@@ -19,7 +19,7 @@
 package org.apache.royale.mdl.beads.models
 {
     import org.apache.royale.events.Event;
-    import org.apache.royale.html.beads.models.ArraySelectionModel;
+    import org.apache.royale.core.beads.models.ArraySelectionModel;
 
     /**
      *  The DropDownListModel class defines the data associated with an org.apache.royale.mdl.DropDownListModel
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/models/TabArrayModel.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/models/TabArrayModel.as
index b760b50..93d2f41 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/models/TabArrayModel.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/models/TabArrayModel.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.mdl.beads.models
 {
-    import org.apache.royale.html.beads.models.ArraySelectionModel;
+    import org.apache.royale.core.beads.models.ArraySelectionModel;
 
     /**
      *  The TabArrayModel class defines the data associated with an org.apache.royale.mdl.Tabs
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/views/DropDownListView.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/views/DropDownListView.as
index 08e2566..fd6afef 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/views/DropDownListView.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/beads/views/DropDownListView.as
@@ -22,7 +22,7 @@ package org.apache.royale.mdl.beads.views
     import org.apache.royale.core.IStrand;
     import org.apache.royale.html.elements.Option;
     import org.apache.royale.html.elements.Select;
-    import org.apache.royale.html.beads.DataContainerView;
+    import org.apache.royale.core.beads.views.DataContainerView;
     import org.apache.royale.mdl.DropDownList;
     import org.apache.royale.events.Event;
 
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/DropDownListItemRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/DropDownListItemRenderer.as
index 69f3349..3a5a8b1 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/DropDownListItemRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/DropDownListItemRenderer.as
@@ -19,7 +19,7 @@
 package org.apache.royale.mdl.itemRenderers
 {
     import org.apache.royale.html.elements.Option;
-    import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+    import org.apache.royale.core.MXMLItemRenderer;
 
     COMPILE::JS
     {
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/FooterLinkItemMouseRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/FooterLinkItemMouseRenderer.as
index 1e7e3db..50f331d 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/FooterLinkItemMouseRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/FooterLinkItemMouseRenderer.as
@@ -20,7 +20,7 @@ package org.apache.royale.mdl.itemRenderers
 {
     COMPILE::JS
     {
-        import org.apache.royale.html.beads.controllers.ItemRendererMouseController;
+        import org.apache.royale.core.beads.controllers.ItemRendererMouseController;
         import org.apache.royale.core.WrappedHTMLElement;
     }
 
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/FooterLinkItemRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/FooterLinkItemRenderer.as
index 25de50b..aebc139 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/FooterLinkItemRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/FooterLinkItemRenderer.as
@@ -24,7 +24,7 @@ package org.apache.royale.mdl.itemRenderers
 		import org.apache.royale.html.util.addElementToWrapper;
     }
 
-	import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+	import org.apache.royale.core.MXMLItemRenderer;
     
 	/**
 	 *  The FooterLinkItemRenderer defines the basic Item Renderer for a MDL Footer Link List Component.
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/ListItemRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/ListItemRenderer.as
index 0c0c4fe..76ae103 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/ListItemRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/ListItemRenderer.as
@@ -24,7 +24,7 @@ package org.apache.royale.mdl.itemRenderers
 		import org.apache.royale.html.util.addElementToWrapper;
     }
 
-	import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+	import org.apache.royale.core.MXMLItemRenderer;;
     
 	/**
 	 *  The ListItemRenderer defines the basic Item Renderer for a MDL List Component.
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/MenuItemRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/MenuItemRenderer.as
index 0c2ae97..6234615 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/MenuItemRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/MenuItemRenderer.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.mdl.itemRenderers
 {
-    import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+    import org.apache.royale.core.MXMLItemRenderer;;
 
     COMPILE::JS
     {
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/NavigationLinkItemMouseRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/NavigationLinkItemMouseRenderer.as
index 6f12f5c..fb98e49 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/NavigationLinkItemMouseRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/NavigationLinkItemMouseRenderer.as
@@ -20,7 +20,7 @@ package org.apache.royale.mdl.itemRenderers
 {
     COMPILE::JS
     {
-        import org.apache.royale.html.beads.controllers.ItemRendererMouseController;
+        import org.apache.royale.core.beads.controllers.ItemRendererMouseController;
         import org.apache.royale.core.WrappedHTMLElement;
     }
 
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/NavigationLinkItemRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/NavigationLinkItemRenderer.as
index ff44147..bab8c53 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/NavigationLinkItemRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/NavigationLinkItemRenderer.as
@@ -24,7 +24,7 @@ package org.apache.royale.mdl.itemRenderers
 		import org.apache.royale.html.util.addElementToWrapper;
     }
 
-	import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+	import org.apache.royale.core.MXMLItemRenderer;;
     
 	/**
 	 *  The NavigationLinkItemRenderer defines the basic Item Renderer for a MDL NavigationLink List Component.
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/TableRowItemRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/TableRowItemRenderer.as
index 0ef30f7..16ce601 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/TableRowItemRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/TableRowItemRenderer.as
@@ -25,7 +25,7 @@ package org.apache.royale.mdl.itemRenderers
     }
 
 	import org.apache.royale.html.TableRow;
-	import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+	import org.apache.royale.core.MXMLItemRenderer;;
     
 	/**
 	 *  The TableItemRenderer defines the basic Item Renderer for a MDL Table Component.
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/TableRowItemSingleSelectionMouseRenderer.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/TableRowItemSingleSelectionMouseRenderer.as
index ac16b81..75263b4 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/TableRowItemSingleSelectionMouseRenderer.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/itemRenderers/TableRowItemSingleSelectionMouseRenderer.as
@@ -20,7 +20,7 @@ package org.apache.royale.mdl.itemRenderers
 {
     COMPILE::JS
     {
-        import org.apache.royale.html.beads.controllers.ItemRendererMouseController;
+        import org.apache.royale.core.beads.controllers.ItemRendererMouseController;
         import org.apache.royale.core.WrappedHTMLElement;
     }
     
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/supportClasses/TabBarButtonItemRendererBase.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/supportClasses/TabBarButtonItemRendererBase.as
index 52e0a8c..2e8e75f 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/supportClasses/TabBarButtonItemRendererBase.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/supportClasses/TabBarButtonItemRendererBase.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.mdl.supportClasses
 {
-    import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+    import org.apache.royale.core.MXMLItemRenderer;;
 
     COMPILE::JS
     {
diff --git a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/supportClasses/TabItemRendererBase.as b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/supportClasses/TabItemRendererBase.as
index b357c0a..2051070 100644
--- a/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/supportClasses/TabItemRendererBase.as
+++ b/frameworks/projects/MaterialDesignLite/src/main/royale/org/apache/royale/mdl/supportClasses/TabItemRendererBase.as
@@ -18,7 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.mdl.supportClasses
 {
-    import org.apache.royale.html.supportClasses.MXMLItemRenderer;
+    import org.apache.royale.core.MXMLItemRenderer;;
 
     COMPILE::JS
     {
diff --git a/frameworks/projects/Mobile/src/main/royale/org/apache/royale/mobile/beads/ViewManagerViewBase.as b/frameworks/projects/Mobile/src/main/royale/org/apache/royale/mobile/beads/ViewManagerViewBase.as
index de5a84a..6544561 100644
--- a/frameworks/projects/Mobile/src/main/royale/org/apache/royale/mobile/beads/ViewManagerViewBase.as
+++ b/frameworks/projects/Mobile/src/main/royale/org/apache/royale/mobile/beads/ViewManagerViewBase.as
@@ -18,6 +18,7 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.royale.mobile.beads
 {
+	import org.apache.royale.core.beads.GroupView;
 	import org.apache.royale.core.IBeadModel;
 	import org.apache.royale.core.IBeadView;
 	import org.apache.royale.core.IStrand;
@@ -28,7 +29,6 @@ package org.apache.royale.mobile.beads
 	import org.apache.royale.events.Event;
 	import org.apache.royale.html.Container;
 	import org.apache.royale.html.beads.layouts.HorizontalLayout;
-	import org.apache.royale.html.beads.GroupView;
 	import org.apache.royale.mobile.IViewManagerView;
 	import org.apache.royale.mobile.chrome.NavigationBar;
 	import org.apache.royale.mobile.models.ViewManagerModel;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Amethyst-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Amethyst-Theme/src/main/resources/defaults.css
index 5b85f86..b84f648 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Amethyst-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Amethyst-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Blue-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Blue-Theme/src/main/resources/defaults.css
index ce6a5c2..7bd6e47 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Blue-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Blue-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Emerald-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Emerald-Theme/src/main/resources/defaults.css
index ab5f529..6ef8b48 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Emerald-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Emerald-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Green-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Green-Theme/src/main/resources/defaults.css
index 2801ed8..a1935aa 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Green-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Green-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Orange-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Orange-Theme/src/main/resources/defaults.css
index 2502861..c19ef01 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Orange-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Orange-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Red-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Red-Theme/src/main/resources/defaults.css
index 79a6f40..7fb5e11 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Red-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Red-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Sapphire-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Sapphire-Theme/src/main/resources/defaults.css
index bc0122f..87bd372 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Sapphire-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Sapphire-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Sunflower-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Sunflower-Theme/src/main/resources/defaults.css
index 95b3873..b1dc720 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Sunflower-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Sunflower-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Topaz-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Topaz-Theme/src/main/resources/defaults.css
index 40b486c..89cc9e8 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Topaz-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Topaz-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Turquoise-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Turquoise-Theme/src/main/resources/defaults.css
index 14b3647..49b28a7 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Turquoise-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Turquoise-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Violet-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Violet-Theme/src/main/resources/defaults.css
index e52c86f..b407d93 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Violet-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Violet-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Yellow-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Yellow-Theme/src/main/resources/defaults.css
index 45c6efe..594fdcc 100644
--- a/frameworks/themes/Jewel-Dark-NoFlat-Primary-Yellow-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Dark-NoFlat-Primary-Yellow-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Amethyst-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Amethyst-Theme/src/main/resources/defaults.css
index d47bf0b..1db1e40 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Amethyst-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Amethyst-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Blue-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Blue-Theme/src/main/resources/defaults.css
index 0e6e217..f7c7ee7 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Blue-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Blue-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Emerald-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Emerald-Theme/src/main/resources/defaults.css
index 5481528..a5ff96b 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Emerald-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Emerald-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Green-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Green-Theme/src/main/resources/defaults.css
index 7a3df39..1af37f9 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Green-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Green-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Orange-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Orange-Theme/src/main/resources/defaults.css
index de80e74..212c5cc 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Orange-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Orange-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Red-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Red-Theme/src/main/resources/defaults.css
index ac79281..05e69f8 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Red-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Red-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Sapphire-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Sapphire-Theme/src/main/resources/defaults.css
index 371602e..0b09eb6 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Sapphire-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Sapphire-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Sunflower-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Sunflower-Theme/src/main/resources/defaults.css
index 0f5ae65..e3fa422 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Sunflower-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Sunflower-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Topaz-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Topaz-Theme/src/main/resources/defaults.css
index 7176086..d423971 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Topaz-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Topaz-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Turquoise-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Turquoise-Theme/src/main/resources/defaults.css
index 7ba93a7..58ca76b 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Turquoise-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Turquoise-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
   display: inline-block;
diff --git a/frameworks/themes/Jewel-Light-NoFlat-Primary-Violet-Theme/src/main/resources/defaults.css b/frameworks/themes/Jewel-Light-NoFlat-Primary-Violet-Theme/src/main/resources/defaults.css
index 14578a0..9cdfcb2 100644
--- a/frameworks/themes/Jewel-Light-NoFlat-Primary-Violet-Theme/src/main/resources/defaults.css
+++ b/frameworks/themes/Jewel-Light-NoFlat-Primary-Violet-Theme/src/main/resources/defaults.css
@@ -124,18 +124,6 @@ div {
   background-color: rgba(0, 0, 0, 0.5);
 }
 
-j|Alert {
-  IBeadModel: ClassReference("org.apache.royale.html.beads.models.AlertModel");
-  IBeadController: ClassReference("org.apache.royale.jewel.beads.controllers.AlertController");
-  IBeadView: ClassReference("org.apache.royale.jewel.beads.views.AlertView");
-}
-
-@media -royale-swf {
-  j|Alert {
-    IBackgroundBead: ClassReference("org.apache.royale.html.beads.SolidBackgroundBead");
-    IBorderBead: ClassReference("org.apache.royale.html.beads.SingleLineBorderBead");
-  }
-}
 .jewel.button {
   cursor: pointer;
... 75 lines suppressed ...

-- 
To stop receiving notification emails like this one, please contact
carlosrovira@apache.org.