delete dialog now works for both craft and subassemblies.  Reorganised some of the shared modules.  Moved commit message specific stuff out of CommonLogic into CommitMessageChanger which is now used by Craft and Campaign.  CommonLogic is no longer used by Campaign, its now used by Craft and Subassembly and contains methods common to those two.  All test passing