Changed the calls to get the workspace folders and folder contents to be one call getFolderContents. The call uses dummy values to indicate when it wants the very root of all directories and when it needs the organisation workspaces. This allows Flash to call the same method (and the same data) for all parts of the display tree, which makes drag and drop much easier. Most of the "rearranging" of the data and the dummy values has been kept in the Action class as it is designed to suit Flash, rather than being normal business logic.
Changed code to suit new name for the field linking designs to their runtime versions (new name LearningDesign.originalLearningDesign). Modified the copyLearningDesign routines to only set the field when creating a runtime design - don't want to link the designs when the user duplicates a design in authoring. Finally, changed the delete learning design methods to delete a design even if it is the parent of other designs (note: this leaves the child designs pointing to a parent that does not exist).