diff --git a/GUI/CommonWidgets/ItemSelectorWidget.cpp b/GUI/CommonWidgets/ItemSelectorWidget.cpp
index 297387c2bc6f1947b225c405292c3d7f48f949f2..22d4ea26578659c5fc907a6753db9ebde9d6df47 100644
--- a/GUI/CommonWidgets/ItemSelectorWidget.cpp
+++ b/GUI/CommonWidgets/ItemSelectorWidget.cpp
@@ -13,8 +13,8 @@
 //  ************************************************************************************************
 
 #include "GUI/CommonWidgets/ItemSelectorWidget.h"
-#include "GUI/Models/Session/SessionDecorationModel.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionDecorationModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/utils/mainwindow_constants.h"
 #include <QListView>
 #include <QVBoxLayout>
diff --git a/GUI/CommonWidgets/ItemStackWidget.cpp b/GUI/CommonWidgets/ItemStackWidget.cpp
index 38e4447946d2b725a7ce68a907e5ef64895b7bb4..83d0f0b8e1883b622ef71e53b303bd96515de5b0 100644
--- a/GUI/CommonWidgets/ItemStackWidget.cpp
+++ b/GUI/CommonWidgets/ItemStackWidget.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/CommonWidgets/ItemStackWidget.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include <QStackedWidget>
 #include <QVBoxLayout>
 
diff --git a/GUI/CommonWidgets/ModelTreeView.cpp b/GUI/CommonWidgets/ModelTreeView.cpp
index 145240d5faafb1a37ff581900d0f79804d995fd8..323194aba0721c51ffecf8b1b6604cb293cbd9e4 100644
--- a/GUI/CommonWidgets/ModelTreeView.cpp
+++ b/GUI/CommonWidgets/ModelTreeView.cpp
@@ -14,8 +14,8 @@
 
 #include "GUI/CommonWidgets/ModelTreeView.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/Session/SessionDecorationModel.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionDecorationModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/CommonWidgets/StyleUtils.h"
 #include <QTreeView>
 #include <QVBoxLayout>
diff --git a/GUI/CommonWidgets/SessionItemController.cpp b/GUI/CommonWidgets/SessionItemController.cpp
index 3403b54a85ec3553a476706014e5e16f334e9e78..5abd0b043dda10d3746b2c28844eda3fbf10aa4f 100644
--- a/GUI/CommonWidgets/SessionItemController.cpp
+++ b/GUI/CommonWidgets/SessionItemController.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/CommonWidgets/SessionItemController.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 SessionItemController::SessionItemController(QObject* prt)
     : QObject(prt), m_item(nullptr), m_parent_subscribed(false)
diff --git a/GUI/Models/Data/AxesItems.h b/GUI/Models/Data/AxesItems.h
index b54f4de49c73fe7e70292ae6923d3cfc4b1d8822..f30f8dedbcf40a878d12b9e8e77444698287303e 100644
--- a/GUI/Models/Data/AxesItems.h
+++ b/GUI/Models/Data/AxesItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_DATA_AXESITEMS_H
 #define BORNAGAIN_GUI_MODELS_DATA_AXESITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include <memory>
 
 class IAxis;
diff --git a/GUI/Models/Data/Data1DViewItem.cpp b/GUI/Models/Data/Data1DViewItem.cpp
index bc32e9e475bb66ae3d35348b857cae523ca4f631..9bda13315b6f233ce382093564c673c3ba1a0e65 100644
--- a/GUI/Models/Data/Data1DViewItem.cpp
+++ b/GUI/Models/Data/Data1DViewItem.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Models/Data/Data1DViewItem.h"
 #include "GUI/Models/Data/AxesItems.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Data/DataItem.h"
 #include "GUI/Models/Data/DataProperties.h"
 #include "GUI/Models/Data/DataPropertyContainer.h"
diff --git a/GUI/Models/Data/Data1DViewItem.h b/GUI/Models/Data/Data1DViewItem.h
index 8d96fdddd06e1c7afed6672083448cc5ae1d9479..836fea12262f52cb1cd5f79a0834b5d32740dbe5 100644
--- a/GUI/Models/Data/Data1DViewItem.h
+++ b/GUI/Models/Data/Data1DViewItem.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_DATA_DATA1DVIEWITEM_H
 #define BORNAGAIN_GUI_MODELS_DATA_DATA1DVIEWITEM_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class AmplitudeAxisItem;
 class BasicAxisItem;
diff --git a/GUI/Models/Data/DataItem.cpp b/GUI/Models/Data/DataItem.cpp
index ae50b3e3ec5e456e2c9e959e2e2b48564719d838..4a42d37e9f7bc01153f62ccefa6f5344dc261ebd 100644
--- a/GUI/Models/Data/DataItem.cpp
+++ b/GUI/Models/Data/DataItem.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Models/Data/DataItem.h"
 #include "Device/Histo/IntensityDataIOFactory.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/utils/Error.h"
 
 void DataItem::setOutputData(OutputData<double>* data)
diff --git a/GUI/Models/Data/DataItem.h b/GUI/Models/Data/DataItem.h
index f71cdd553c927262a3c40565cbe5d54acfaa787c..39ba1f9e35793c87607a93d29921865af91d51eb 100644
--- a/GUI/Models/Data/DataItem.h
+++ b/GUI/Models/Data/DataItem.h
@@ -17,7 +17,7 @@
 
 #include "Device/Data/OutputData.h"
 #include "GUI/Models/X/SaveLoadInterface.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include <QDateTime>
 #include <mutex>
 
diff --git a/GUI/Models/Data/DataProperties.cpp b/GUI/Models/Data/DataProperties.cpp
index 260b1f3e74c7fe5d0904ca03269465cc5455e936..7d6d50d8cad9f8cb886c51a6338385328be4e885 100644
--- a/GUI/Models/Data/DataProperties.cpp
+++ b/GUI/Models/Data/DataProperties.cpp
@@ -13,11 +13,11 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Data/DataProperties.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Data/DataItem.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/Session/ModelPath.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/ModelPath.h"
+#include "GUI/Session/SessionModel.h"
 #include <QColor>
 
 namespace {
diff --git a/GUI/Models/Data/DataProperties.h b/GUI/Models/Data/DataProperties.h
index e7cfee555cc9bba642f6130e8843d61c27c0aecc..f3385d75a21384b808dc078b45d09d452c81ccab 100644
--- a/GUI/Models/Data/DataProperties.h
+++ b/GUI/Models/Data/DataProperties.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_DATA_DATAPROPERTIES_H
 #define BORNAGAIN_GUI_MODELS_DATA_DATAPROPERTIES_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class DataItem;
 
diff --git a/GUI/Models/Data/DataPropertyContainer.h b/GUI/Models/Data/DataPropertyContainer.h
index a7c9fa9bc8252f16758c36a591db916a5d10b6dc..311f3a39ab71cc414bacf86dd23480be4daeee23 100644
--- a/GUI/Models/Data/DataPropertyContainer.h
+++ b/GUI/Models/Data/DataPropertyContainer.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_DATA_DATAPROPERTYCONTAINER_H
 #define BORNAGAIN_GUI_MODELS_DATA_DATAPROPERTYCONTAINER_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class DataItem;
 class DataProperties;
diff --git a/GUI/Models/Data/IntensityDataItem.cpp b/GUI/Models/Data/IntensityDataItem.cpp
index d9ab6fd71110dfd08c2b7cf92d82fb8724b5c4e0..43f17e8533440e0b1cdba22f3fcabea23de41eda 100644
--- a/GUI/Models/Data/IntensityDataItem.cpp
+++ b/GUI/Models/Data/IntensityDataItem.cpp
@@ -17,10 +17,10 @@
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Data/ImportDataInfo.h"
 #include "GUI/Models/Job/JobItemUtils.h"
-#include "GUI/Models/Instrument/MaskItems.h"
-#include "GUI/Models/Instrument/MaskUnitsConverter.h"
+#include "GUI/Models/Data/MaskItems.h"
+#include "GUI/Models/Data/MaskUnitsConverter.h"
 #include "GUI/Models/X/ProjectionItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 namespace {
 ComboProperty gradientCombo()
diff --git a/GUI/Models/Instrument/MaskItems.cpp b/GUI/Models/Data/MaskItems.cpp
similarity index 99%
rename from GUI/Models/Instrument/MaskItems.cpp
rename to GUI/Models/Data/MaskItems.cpp
index 21ba316eb6c10fa94beea7ed55325696084af9bf..67365d1864b679e8855534f13b5fa6214073ee61 100644
--- a/GUI/Models/Instrument/MaskItems.cpp
+++ b/GUI/Models/Data/MaskItems.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Instrument/MaskItems.cpp
+//! @file      GUI/Models/Data/MaskItems.cpp
 //! @brief     Implements MaskItems classes
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "Device/Mask/Ellipse.h"
 #include "Device/Mask/InfinitePlane.h"
 #include "Device/Mask/Line.h"
diff --git a/GUI/Models/Instrument/MaskItems.h b/GUI/Models/Data/MaskItems.h
similarity index 95%
rename from GUI/Models/Instrument/MaskItems.h
rename to GUI/Models/Data/MaskItems.h
index cea5a2b7dd3e47f4efd90a915652f5ec45478908..f1bcc4212e48b7bbbbd626141d9c4c76e45d8898 100644
--- a/GUI/Models/Instrument/MaskItems.h
+++ b/GUI/Models/Data/MaskItems.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Instrument/MaskItems.h
+//! @file      GUI/Models/Data/MaskItems.h
 //! @brief     Defines MaskItems classes
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_INSTRUMENT_MASKITEMS_H
-#define BORNAGAIN_GUI_MODELS_INSTRUMENT_MASKITEMS_H
+#ifndef BORNAGAIN_GUI_MODELS_DATA_MASKITEMS_H
+#define BORNAGAIN_GUI_MODELS_DATA_MASKITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class IShape2D;
 
@@ -188,4 +188,4 @@ public:
     virtual std::unique_ptr<IShape2D> createShape(double scale) const override;
 };
 
-#endif // BORNAGAIN_GUI_MODELS_INSTRUMENT_MASKITEMS_H
+#endif // BORNAGAIN_GUI_MODELS_DATA_MASKITEMS_H
diff --git a/GUI/Models/Instrument/MaskUnitsConverter.cpp b/GUI/Models/Data/MaskUnitsConverter.cpp
similarity index 97%
rename from GUI/Models/Instrument/MaskUnitsConverter.cpp
rename to GUI/Models/Data/MaskUnitsConverter.cpp
index 68d25c02508f93d0f82200a2d2b46913c0c0ecc9..12282bda8ddde3d1c806b519ab5bc29ecfffcc45 100644
--- a/GUI/Models/Instrument/MaskUnitsConverter.cpp
+++ b/GUI/Models/Data/MaskUnitsConverter.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Instrument/MaskUnitsConverter.cpp
+//! @file      GUI/Models/Data/MaskUnitsConverter.cpp
 //! @brief     Implements class MaskUnitsConverter
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Instrument/MaskUnitsConverter.h"
+#include "GUI/Models/Data/MaskUnitsConverter.h"
 #include "Device/Data/DataUtils.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/X/ProjectionItems.h"
 
 #include <boost/polymorphic_cast.hpp>
diff --git a/GUI/Models/Instrument/MaskUnitsConverter.h b/GUI/Models/Data/MaskUnitsConverter.h
similarity index 87%
rename from GUI/Models/Instrument/MaskUnitsConverter.h
rename to GUI/Models/Data/MaskUnitsConverter.h
index 96d7c12484b8236e173542bea6566fa19b57dabd..067c3af299b295d059f20309a4c9728e6b84119b 100644
--- a/GUI/Models/Instrument/MaskUnitsConverter.h
+++ b/GUI/Models/Data/MaskUnitsConverter.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Instrument/MaskUnitsConverter.h
+//! @file      GUI/Models/Data/MaskUnitsConverter.h
 //! @brief     Defines class MaskUnitsConverter
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_INSTRUMENT_MASKUNITSCONVERTER_H
-#define BORNAGAIN_GUI_MODELS_INSTRUMENT_MASKUNITSCONVERTER_H
+#ifndef BORNAGAIN_GUI_MODELS_DATA_MASKUNITSCONVERTER_H
+#define BORNAGAIN_GUI_MODELS_DATA_MASKUNITSCONVERTER_H
 
 class IntensityDataItem;
 class SessionItem;
@@ -51,4 +51,4 @@ private:
     EConvertionDirection m_direction;
 };
 
-#endif // BORNAGAIN_GUI_MODELS_INSTRUMENT_MASKUNITSCONVERTER_H
+#endif // BORNAGAIN_GUI_MODELS_DATA_MASKUNITSCONVERTER_H
diff --git a/GUI/Models/Data/RealDataItem.cpp b/GUI/Models/Data/RealDataItem.cpp
index a5df8e4d1ebc6346c0b4e8a9665c417c5b6b2515..b47eec758f7f9e3f790e3b58da9b7e814b6329af 100644
--- a/GUI/Models/Data/RealDataItem.cpp
+++ b/GUI/Models/Data/RealDataItem.cpp
@@ -26,7 +26,7 @@
 #include "GUI/Models/Job/JobItem.h"
 #include "GUI/Models/Job/JobItemUtils.h"
 #include "GUI/Models/Job/JobModelFunctions.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/X/ProjectionItems.h"
 #include "GUI/Models/Data/RealDataModel.h"
 #include "GUI/Models/Data/SpecularDataItem.h"
diff --git a/GUI/Models/Data/RealDataItem.h b/GUI/Models/Data/RealDataItem.h
index 1f9dc99f0085816e14ca98bfe5a5ba255ac3b413..04100aa72e9ba08288336186a7b73331b6e28b56 100644
--- a/GUI/Models/Data/RealDataItem.h
+++ b/GUI/Models/Data/RealDataItem.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_DATA_REALDATAITEM_H
 
 #include "GUI/Models/Data/AbstractDataLoader.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include <QPointer>
 
 class DataItem;
diff --git a/GUI/Models/Data/RealDataModel.h b/GUI/Models/Data/RealDataModel.h
index f20bf52191179bc7b952feaa49d89c93ee849bb9..188db5ffe4dc8cbb92f0542eb57f02354a7a5862 100644
--- a/GUI/Models/Data/RealDataModel.h
+++ b/GUI/Models/Data/RealDataModel.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_DATA_REALDATAMODEL_H
 #define BORNAGAIN_GUI_MODELS_DATA_REALDATAMODEL_H
 
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 class RealDataItem;
 
diff --git a/GUI/Models/Domain/GUIDomainSampleVisitor.cpp b/GUI/Models/Domain/GUIDomainSampleVisitor.cpp
index f5dfe377c2117209e770203eb1d72126ff2fc89c..696092abb3c8956a20beaef04085f0cbc4232c1b 100644
--- a/GUI/Models/Domain/GUIDomainSampleVisitor.cpp
+++ b/GUI/Models/Domain/GUIDomainSampleVisitor.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Models/Domain/GUIDomainSampleVisitor.h"
 #include "Base/Const/Units.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Types/DoubleDescriptor.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
diff --git a/GUI/Models/Domain/TransformFromDomain.cpp b/GUI/Models/Domain/TransformFromDomain.cpp
index eb0fd2cb31a5990101c8f3e3067e5ca95e7e4a3b..ff916946c28ceb81208fb0bf7ee35c69c62e3a64 100644
--- a/GUI/Models/Domain/TransformFromDomain.cpp
+++ b/GUI/Models/Domain/TransformFromDomain.cpp
@@ -45,7 +45,7 @@
 #include "GUI/Models/Sample/Lattice2DItems.h"
 #include "GUI/Models/Sample/LayerItem.h"
 #include "GUI/Models/Sample/LayerRoughnessItems.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/Instrument/RectangularDetectorItem.h"
 #include "GUI/Models/Instrument/ResolutionFunctionItems.h"
 #include "GUI/Models/Instrument/SphericalDetectorItem.h"
diff --git a/GUI/Models/Fit/FitParameterProxyModel.cpp b/GUI/Models/Fit/FitParameterProxyModel.cpp
index 62f6724d257b307b501c37eeb9807db3779fd8c0..805d3cdf5f12038dfb13bfef659af1e2fdc44c5e 100644
--- a/GUI/Models/Fit/FitParameterProxyModel.cpp
+++ b/GUI/Models/Fit/FitParameterProxyModel.cpp
@@ -17,8 +17,8 @@
 #include "GUI/Models/Parameter/FitParameterHelper.h"
 #include "GUI/Models/Parameter/FitParameterItems.h"
 #include "GUI/Models/Job/JobModel.h"
-#include "GUI/Models/Session/ModelPath.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/ModelPath.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include <QColor>
 #include <QMimeData>
 
diff --git a/GUI/Models/Fit/FitSuiteItem.cpp b/GUI/Models/Fit/FitSuiteItem.cpp
index 5abadd6f1386e4499e3f3e0d130e815107ff4604..3b3d4eed5bdaff1f7cac85fbf461a1ce85572f70 100644
--- a/GUI/Models/Fit/FitSuiteItem.cpp
+++ b/GUI/Models/Fit/FitSuiteItem.cpp
@@ -16,7 +16,7 @@
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Parameter/FitParameterItems.h"
 #include "GUI/Models/Fit/MinimizerItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 FitSuiteItem::FitSuiteItem() : SessionItem(M_TYPE)
 {
diff --git a/GUI/Models/Fit/FitSuiteItem.h b/GUI/Models/Fit/FitSuiteItem.h
index 76e01a6a91a2a5bfbb41f83ae22bb516a9f89733..0ab76e53a2b7e38737440ca89e4734acb716b36e 100644
--- a/GUI/Models/Fit/FitSuiteItem.h
+++ b/GUI/Models/Fit/FitSuiteItem.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_FIT_FITSUITEITEM_H
 #define BORNAGAIN_GUI_MODELS_FIT_FITSUITEITEM_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class FitParameterContainerItem;
 class MinimizerContainerItem;
diff --git a/GUI/Models/Fit/MinimizerItem.cpp b/GUI/Models/Fit/MinimizerItem.cpp
index 084dd14c51746b38dd580183183fe69422ac171b..f2ec8510e37400900fd62e73b4fad295a83ee407 100644
--- a/GUI/Models/Fit/MinimizerItem.cpp
+++ b/GUI/Models/Fit/MinimizerItem.cpp
@@ -21,7 +21,7 @@
 #include "Fit/Adapter/Minuit2Minimizer.h"
 #include "Fit/Adapter/SimAnMinimizer.h"
 #include "Fit/Minimizer/TestMinimizer.h"
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include "GUI/Models/Fit/MinimizerItemCatalog.h"
 
 namespace {
diff --git a/GUI/Models/Fit/MinimizerItem.h b/GUI/Models/Fit/MinimizerItem.h
index e381f944829ae9a2fda184b99980574725c3297e..272e6844e3d43698834fcc621c8f5638380ae26a 100644
--- a/GUI/Models/Fit/MinimizerItem.h
+++ b/GUI/Models/Fit/MinimizerItem.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_FIT_MINIMIZERITEM_H
 #define BORNAGAIN_GUI_MODELS_FIT_MINIMIZERITEM_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class IMinimizer;
 class ObjectiveMetric;
diff --git a/GUI/Models/Fit/MinimizerItemCatalog.h b/GUI/Models/Fit/MinimizerItemCatalog.h
index a6835da6d3a97d0dbf7aa6debbbd30b55efc1302..b500faf79faff080ab0f4609aa64dd669e38fc5c 100644
--- a/GUI/Models/Fit/MinimizerItemCatalog.h
+++ b/GUI/Models/Fit/MinimizerItemCatalog.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_FIT_MINIMIZERITEMCATALOG_H
 #define BORNAGAIN_GUI_MODELS_FIT_MINIMIZERITEMCATALOG_H
 
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 
 class MinimizerItem;
 
diff --git a/GUI/Models/X5/ComboProperty.cpp b/GUI/Models/Group/ComboProperty.cpp
similarity index 98%
rename from GUI/Models/X5/ComboProperty.cpp
rename to GUI/Models/Group/ComboProperty.cpp
index be0d9cdbdf797a558e601ed4dcb8341fbd63f003..5b676ce738b7f54fc932315a8fffda26b6b25d4c 100644
--- a/GUI/Models/X5/ComboProperty.cpp
+++ b/GUI/Models/Group/ComboProperty.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X5/ComboProperty.cpp
+//! @file      GUI/Models/Group/ComboProperty.cpp
 //! @brief     Implements class ComboProperty
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "Base/Utils/Assert.h"
 #include "GUI/utils/Error.h"
 
diff --git a/GUI/Models/X5/ComboProperty.h b/GUI/Models/Group/ComboProperty.h
similarity index 91%
rename from GUI/Models/X5/ComboProperty.h
rename to GUI/Models/Group/ComboProperty.h
index 8fd40ca5cfdca68409bc093dfe2eb2e0780896d6..23bcf5207527f79a1d2d6f38c1cafa9b1c63eb99 100644
--- a/GUI/Models/X5/ComboProperty.h
+++ b/GUI/Models/Group/ComboProperty.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X5/ComboProperty.h
+//! @file      GUI/Models/Group/ComboProperty.h
 //! @brief     Defines class ComboProperty
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X5_COMBOPROPERTY_H
-#define BORNAGAIN_GUI_MODELS_X5_COMBOPROPERTY_H
+#ifndef BORNAGAIN_GUI_MODELS_GROUP_COMBOPROPERTY_H
+#define BORNAGAIN_GUI_MODELS_GROUP_COMBOPROPERTY_H
 
 #include <QStringList>
 #include <QVariant>
@@ -72,4 +72,4 @@ private:
 
 Q_DECLARE_METATYPE(ComboProperty)
 
-#endif // BORNAGAIN_GUI_MODELS_X5_COMBOPROPERTY_H
+#endif // BORNAGAIN_GUI_MODELS_GROUP_COMBOPROPERTY_H
diff --git a/GUI/Models/X5/GroupInfo.cpp b/GUI/Models/Group/GroupInfo.cpp
similarity index 96%
rename from GUI/Models/X5/GroupInfo.cpp
rename to GUI/Models/Group/GroupInfo.cpp
index 6b3018b1864ce416d7de0c44b390b13b37d19a3f..3f2e77ef675b22e269c3b8e938e07bfd596401a2 100644
--- a/GUI/Models/X5/GroupInfo.cpp
+++ b/GUI/Models/Group/GroupInfo.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X5/GroupInfo.cpp
+//! @file      GUI/Models/Group/GroupInfo.cpp
 //! @brief     Defines class GroupInfo
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include "GUI/utils/Error.h"
 
 GroupInfo::GroupInfo(bool is_sorted) : is_sorted(is_sorted) {}
diff --git a/GUI/Models/X5/GroupInfo.h b/GUI/Models/Group/GroupInfo.h
similarity index 90%
rename from GUI/Models/X5/GroupInfo.h
rename to GUI/Models/Group/GroupInfo.h
index 6c677b471be4b0ed96d24ec45ee35d15780581f4..a700e07629b350bcc62c9ce9a708d9ada52da2be 100644
--- a/GUI/Models/X5/GroupInfo.h
+++ b/GUI/Models/Group/GroupInfo.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X5/GroupInfo.h
+//! @file      GUI/Models/Group/GroupInfo.h
 //! @brief     Defines class GroupInfo
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X5_GROUPINFO_H
-#define BORNAGAIN_GUI_MODELS_X5_GROUPINFO_H
+#ifndef BORNAGAIN_GUI_MODELS_GROUP_GROUPINFO_H
+#define BORNAGAIN_GUI_MODELS_GROUP_GROUPINFO_H
 
-#include "GUI/Models/X1/ItemCatalog.h"
+#include "GUI/Models/Group/ItemCatalog.h"
 #include <QString>
 #include <QStringList>
 #include <QVector>
@@ -67,4 +67,4 @@ private:
     QVector<TypeAndLabel> m_info;
 };
 
-#endif // BORNAGAIN_GUI_MODELS_X5_GROUPINFO_H
+#endif // BORNAGAIN_GUI_MODELS_GROUP_GROUPINFO_H
diff --git a/GUI/Models/X5/GroupItem.cpp b/GUI/Models/Group/GroupItem.cpp
similarity index 94%
rename from GUI/Models/X5/GroupItem.cpp
rename to GUI/Models/Group/GroupItem.cpp
index 5e70153cc9218a5b8f2100b8e947be24e07da6a7..31bb86ef8182bfdc6c69aa87c95327d75f76c411 100644
--- a/GUI/Models/X5/GroupItem.cpp
+++ b/GUI/Models/Group/GroupItem.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X5/GroupItem.cpp
+//! @file      GUI/Models/Group/GroupItem.cpp
 //! @brief     Implements class GroupItem
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X5/GroupItem.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/GroupItem.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/utils/Error.h"
 
 GroupItem::GroupItem() : SessionItem(M_TYPE)
diff --git a/GUI/Models/X5/GroupItem.h b/GUI/Models/Group/GroupItem.h
similarity index 82%
rename from GUI/Models/X5/GroupItem.h
rename to GUI/Models/Group/GroupItem.h
index ca0e613c78413bc6f24d2737e99881e413266a49..56698e50793456d0985269bed9c8d58bf1ea3913 100644
--- a/GUI/Models/X5/GroupItem.h
+++ b/GUI/Models/Group/GroupItem.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X5/GroupItem.h
+//! @file      GUI/Models/Group/GroupItem.h
 //! @brief     Defines class GroupItem
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,12 +12,12 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X5_GROUPITEM_H
-#define BORNAGAIN_GUI_MODELS_X5_GROUPITEM_H
+#ifndef BORNAGAIN_GUI_MODELS_GROUP_GROUPITEM_H
+#define BORNAGAIN_GUI_MODELS_GROUP_GROUPITEM_H
 
-#include "GUI/Models/X5/GroupInfo.h"
-#include "GUI/Models/X5/GroupItemController.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Models/Group/GroupInfo.h"
+#include "GUI/Models/Group/GroupItemController.h"
+#include "GUI/Session/SessionItem.h"
 #include <memory>
 
 class GroupInfo;
@@ -58,4 +58,4 @@ template <typename T> T* GroupItem::itemOfType() const
     return dynamic_cast<T*>(m_controller->getItemOfType(T::M_TYPE));
 }
 
-#endif // BORNAGAIN_GUI_MODELS_X5_GROUPITEM_H
+#endif // BORNAGAIN_GUI_MODELS_GROUP_GROUPITEM_H
diff --git a/GUI/Models/X5/GroupItemController.cpp b/GUI/Models/Group/GroupItemController.cpp
similarity index 93%
rename from GUI/Models/X5/GroupItemController.cpp
rename to GUI/Models/Group/GroupItemController.cpp
index 42f8b9e9b993467f04f5fe644d7da7bb2f5eeddc..80d528f10e022e29f06f3a2515b44a8dd2fc4685 100644
--- a/GUI/Models/X5/GroupItemController.cpp
+++ b/GUI/Models/Group/GroupItemController.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X5/GroupItemController.cpp
+//! @file      GUI/Models/Group/GroupItemController.cpp
 //! @brief     Implements class GroupItemController
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X5/GroupItemController.h"
-#include "GUI/Models/X5/ComboProperty.h"
-#include "GUI/Models/X1/ItemFactory.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Models/Group/GroupItemController.h"
+#include "GUI/Models/Group/ComboProperty.h"
+#include "GUI/Models/Group/ItemFactory.h"
+#include "GUI/Session/SessionItem.h"
 
 GroupItemController::GroupItemController(SessionItem* groupItem, GroupInfo groupInfo)
     : m_groupItem(groupItem), m_groupInfo(groupInfo)
diff --git a/GUI/Models/X5/GroupItemController.h b/GUI/Models/Group/GroupItemController.h
similarity index 84%
rename from GUI/Models/X5/GroupItemController.h
rename to GUI/Models/Group/GroupItemController.h
index 2ef3a1abc462a867d1ff6ab18da27fb95cf7f958..48e53124eff811224316f1870d1f27e94cc38aca 100644
--- a/GUI/Models/X5/GroupItemController.h
+++ b/GUI/Models/Group/GroupItemController.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X5/GroupItemController.h
+//! @file      GUI/Models/Group/GroupItemController.h
 //! @brief     Defines class GroupItemController
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X5_GROUPITEMCONTROLLER_H
-#define BORNAGAIN_GUI_MODELS_X5_GROUPITEMCONTROLLER_H
+#ifndef BORNAGAIN_GUI_MODELS_GROUP_GROUPITEMCONTROLLER_H
+#define BORNAGAIN_GUI_MODELS_GROUP_GROUPITEMCONTROLLER_H
 
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include <QStringList>
 #include <QVariant>
 
@@ -52,4 +52,4 @@ private:
     GroupInfo m_groupInfo;
 };
 
-#endif // BORNAGAIN_GUI_MODELS_X5_GROUPITEMCONTROLLER_H
+#endif // BORNAGAIN_GUI_MODELS_GROUP_GROUPITEMCONTROLLER_H
diff --git a/GUI/Models/X1/ItemCatalog.cpp b/GUI/Models/Group/ItemCatalog.cpp
similarity index 99%
rename from GUI/Models/X1/ItemCatalog.cpp
rename to GUI/Models/Group/ItemCatalog.cpp
index a7b72193e7cf8746f0294aad2954f60d59ffb7be..95e9c5164d3ed7229f30c53c406e2353beb0dbcb 100644
--- a/GUI/Models/X1/ItemCatalog.cpp
+++ b/GUI/Models/Group/ItemCatalog.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X1/ItemCatalog.cpp
+//! @file      GUI/Models/Group/ItemCatalog.cpp
 //! @brief     Implements class ItemCatalog
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X1/ItemCatalog.h"
+#include "GUI/Models/Group/ItemCatalog.h"
 #include "Base/Utils/Assert.h"
 #include "GUI/Models/Instrument/BackgroundItems.h"
 #include "GUI/Models/Instrument/BeamAngleItems.h"
@@ -27,7 +27,7 @@
 #include "GUI/Models/Fit/FitSuiteItem.h"
 #include "GUI/Models/Instrument/FootprintItems.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
 #include "GUI/Models/Sample/InterferenceItems.h"
@@ -35,7 +35,7 @@
 #include "GUI/Models/Sample/Lattice2DItems.h"
 #include "GUI/Models/Sample/LayerItem.h"
 #include "GUI/Models/Sample/LayerRoughnessItems.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/Material/MaterialDataItems.h"
 #include "GUI/Models/Material/MaterialItem.h"
 #include "GUI/Models/Material/MaterialItemContainer.h"
diff --git a/GUI/Models/X1/ItemCatalog.h b/GUI/Models/Group/ItemCatalog.h
similarity index 90%
rename from GUI/Models/X1/ItemCatalog.h
rename to GUI/Models/Group/ItemCatalog.h
index d71126038d2054df063934212e5344f90ab0d9c2..964a1a0f455e20934f0febd10091da956fc1b402 100644
--- a/GUI/Models/X1/ItemCatalog.h
+++ b/GUI/Models/Group/ItemCatalog.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X1/ItemCatalog.h
+//! @file      GUI/Models/Group/ItemCatalog.h
 //! @brief     Defines class ItemCatalog
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X1_ITEMCATALOG_H
-#define BORNAGAIN_GUI_MODELS_X1_ITEMCATALOG_H
+#ifndef BORNAGAIN_GUI_MODELS_GROUP_ITEMCATALOG_H
+#define BORNAGAIN_GUI_MODELS_GROUP_ITEMCATALOG_H
 
 #include "Base/Utils/IFactory.h"
 #include <QMap>
@@ -64,4 +64,4 @@ private:
 };
 
 
-#endif // BORNAGAIN_GUI_MODELS_X1_ITEMCATALOG_H
+#endif // BORNAGAIN_GUI_MODELS_GROUP_ITEMCATALOG_H
diff --git a/GUI/Models/X1/ItemFactory.cpp b/GUI/Models/Group/ItemFactory.cpp
similarity index 84%
rename from GUI/Models/X1/ItemFactory.cpp
rename to GUI/Models/Group/ItemFactory.cpp
index c26f5f9a69d7961e05f617b64e47110778d0bfe4..afb3d9054a1ed81169bd0556fe82c3a0ae9555f1 100644
--- a/GUI/Models/X1/ItemFactory.cpp
+++ b/GUI/Models/Group/ItemFactory.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X1/ItemFactory.cpp
+//! @file      GUI/Models/Group/ItemFactory.cpp
 //! @brief     Implements class ItemFactory
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,9 +12,9 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X1/ItemFactory.h"
-#include "GUI/Models/X1/ItemCatalog.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Models/Group/ItemFactory.h"
+#include "GUI/Models/Group/ItemCatalog.h"
+#include "GUI/Session/SessionItem.h"
 
 SessionItem* GUI::Model::ItemFactory::CreateItem(const QString& model_name, SessionItem* parent)
 {
diff --git a/GUI/Models/X1/ItemFactory.h b/GUI/Models/Group/ItemFactory.h
similarity index 86%
rename from GUI/Models/X1/ItemFactory.h
rename to GUI/Models/Group/ItemFactory.h
index 11ba9c69ed27f0a8bad0e82d1ac918bfaca53c83..61cf6ab8bb4ea37d0bdaa1436a1df54dca2cf813 100644
--- a/GUI/Models/X1/ItemFactory.h
+++ b/GUI/Models/Group/ItemFactory.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X1/ItemFactory.h
+//! @file      GUI/Models/Group/ItemFactory.h
 //! @brief     Defines namespace GUI::Model::ItemFactory
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X1_ITEMFACTORY_H
-#define BORNAGAIN_GUI_MODELS_X1_ITEMFACTORY_H
+#ifndef BORNAGAIN_GUI_MODELS_GROUP_ITEMFACTORY_H
+#define BORNAGAIN_GUI_MODELS_GROUP_ITEMFACTORY_H
 
 #include <QString>
 
@@ -39,4 +39,4 @@ template <typename ItemType> ItemType* CreateItem(SessionItem* parent)
 
 }; // namespace GUI::Model::ItemFactory
 
-#endif // BORNAGAIN_GUI_MODELS_X1_ITEMFACTORY_H
+#endif // BORNAGAIN_GUI_MODELS_GROUP_ITEMFACTORY_H
diff --git a/GUI/Models/Instrument/BackgroundItems.h b/GUI/Models/Instrument/BackgroundItems.h
index 10c7327c4b3b44d9b8740cf7e1ded33c9ac40732..a194ba3250a193965ce8ea42b7d04b0c97e76780 100644
--- a/GUI/Models/Instrument/BackgroundItems.h
+++ b/GUI/Models/Instrument/BackgroundItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_INSTRUMENT_BACKGROUNDITEMS_H
 #define BORNAGAIN_GUI_MODELS_INSTRUMENT_BACKGROUNDITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class IBackground;
 
diff --git a/GUI/Models/Instrument/BeamDistributionItem.cpp b/GUI/Models/Instrument/BeamDistributionItem.cpp
index b55f3ac2fcc77ac2e7a4f02c03d23c68773000a3..c5eee6e2bdb8a2dbfad2dd057e9855c68b19a2f0 100644
--- a/GUI/Models/Instrument/BeamDistributionItem.cpp
+++ b/GUI/Models/Instrument/BeamDistributionItem.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Instrument/BeamDistributionItem.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Types/RealLimitsItems.h"
 #include "Param/Distrib/Distributions.h"
 
diff --git a/GUI/Models/Instrument/BeamItems.cpp b/GUI/Models/Instrument/BeamItems.cpp
index 5a7d5a67afaa56bc49d639de9025bfb38344a904..9451b1c8bdc852b30123c4f3af24a2f51412938d 100644
--- a/GUI/Models/Instrument/BeamItems.cpp
+++ b/GUI/Models/Instrument/BeamItems.cpp
@@ -19,7 +19,7 @@
 #include "GUI/Models/Instrument/BeamAngleItems.h"
 #include "GUI/Models/Instrument/BeamWavelengthItem.h"
 #include "GUI/Models/Instrument/FootprintItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Data/PointwiseAxisItem.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include <cmath>
diff --git a/GUI/Models/Instrument/BeamItems.h b/GUI/Models/Instrument/BeamItems.h
index 882d9326f45d3fdac0a73a6cce2aa4ba6de22f43..0d52bbc604db25ea96c1e4a365528d319c7bd6a9 100644
--- a/GUI/Models/Instrument/BeamItems.h
+++ b/GUI/Models/Instrument/BeamItems.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_INSTRUMENT_BEAMITEMS_H
 
 #include "Base/Vector/Vectors3D.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "GUI/Models/Instrument/SpecularBeamInclinationItem.h"
 
 class BasicAxisItem;
diff --git a/GUI/Models/Instrument/DetectorItems.cpp b/GUI/Models/Instrument/DetectorItems.cpp
index 1ed0edbf83e2551dd6b8a85a90e6c98daec0f0ec..875b872bf5aaa260703cdc8274f007be4ec335af 100644
--- a/GUI/Models/Instrument/DetectorItems.cpp
+++ b/GUI/Models/Instrument/DetectorItems.cpp
@@ -16,10 +16,10 @@
 #include "Device/Detector/IDetector2D.h"
 #include "Device/Mask/IShape2D.h"
 #include "Device/Resolution/ResolutionFunction2DGaussian.h"
-#include "GUI/Models/X5/GroupInfo.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Group/GroupInfo.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/Instrument/ResolutionFunctionItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Instrument/SphericalDetectorItem.h"
 
 namespace {
diff --git a/GUI/Models/Instrument/DetectorItems.h b/GUI/Models/Instrument/DetectorItems.h
index c63e43687b76acf69a0e4cec36fcde6cebce5357..feb0b698f134dd279654fa4689f69ced9915e05f 100644
--- a/GUI/Models/Instrument/DetectorItems.h
+++ b/GUI/Models/Instrument/DetectorItems.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_INSTRUMENT_DETECTORITEMS_H
 
 #include "Base/Vector/Vectors3D.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class MaskContainerItem;
 class IDetector2D;
diff --git a/GUI/Models/Instrument/FootprintItems.h b/GUI/Models/Instrument/FootprintItems.h
index 19cec1ddfb1d9ce3ebafa48309c6bc54523518e5..8ec1e6aaed4d289aaf4dd63d32f08275b90622a7 100644
--- a/GUI/Models/Instrument/FootprintItems.h
+++ b/GUI/Models/Instrument/FootprintItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_INSTRUMENT_FOOTPRINTITEMS_H
 #define BORNAGAIN_GUI_MODELS_INSTRUMENT_FOOTPRINTITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class IFootprintFactor;
 
diff --git a/GUI/Models/Instrument/InstrumentItems.cpp b/GUI/Models/Instrument/InstrumentItems.cpp
index e8c1e5a5f2f41e920f9f419d09c599569f45e755..d19ce7123ff4c5d19c8af0ac16873a170387e5c8 100644
--- a/GUI/Models/Instrument/InstrumentItems.cpp
+++ b/GUI/Models/Instrument/InstrumentItems.cpp
@@ -25,7 +25,7 @@
 #include "GUI/Models/Instrument/BeamWavelengthItem.h"
 #include "GUI/Models/Instrument/DetectorItems.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/X1/ItemFileNameUtils.h"
 #include "GUI/Models/Job/JobItemUtils.h"
 #include "GUI/Models/Data/PointwiseAxisItem.h"
diff --git a/GUI/Models/Instrument/InstrumentModel.cpp b/GUI/Models/Instrument/InstrumentModel.cpp
index e2e3d3c318c7b4ef0cb2b6ff8047ddc06376180f..1be48aea864c88abf0e63a137ddfa3a6d819dc53 100644
--- a/GUI/Models/Instrument/InstrumentModel.cpp
+++ b/GUI/Models/Instrument/InstrumentModel.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Instrument/InstrumentModel.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
 #include "GUI/Models/X2/ModelUtils.h"
 #include "GUI/Models/Data/PointwiseAxisItem.h"
diff --git a/GUI/Models/Instrument/InstrumentModel.h b/GUI/Models/Instrument/InstrumentModel.h
index adbe6761022d19d1fc38feac8dddcaa53ec71232..19e2761b7131e4eba7d91db37b846b67b7061c23 100644
--- a/GUI/Models/Instrument/InstrumentModel.h
+++ b/GUI/Models/Instrument/InstrumentModel.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_INSTRUMENT_INSTRUMENTMODEL_H
 #define BORNAGAIN_GUI_MODELS_INSTRUMENT_INSTRUMENTMODEL_H
 
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include <functional>
 
 class InstrumentItem;
diff --git a/GUI/Models/Instrument/RectangularDetectorItem.h b/GUI/Models/Instrument/RectangularDetectorItem.h
index 5760e6b3e714dfa8d935d54d15b6aa9a87a6c0fd..5065c55e836ff78ca73d701c92153d75c4dd9f35 100644
--- a/GUI/Models/Instrument/RectangularDetectorItem.h
+++ b/GUI/Models/Instrument/RectangularDetectorItem.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_INSTRUMENT_RECTANGULARDETECTORITEM_H
 
 #include "Base/Vector/Vectors3D.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Instrument/DetectorItems.h"
 
 class BasicAxisItem;
diff --git a/GUI/Models/Instrument/ResolutionFunctionItems.h b/GUI/Models/Instrument/ResolutionFunctionItems.h
index bac334dd38eef5fd4d3d41c6b240ea8905807261..42cf895beb9fcdbe21e8bdeeb096360be92dd676 100644
--- a/GUI/Models/Instrument/ResolutionFunctionItems.h
+++ b/GUI/Models/Instrument/ResolutionFunctionItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_INSTRUMENT_RESOLUTIONFUNCTIONITEMS_H
 #define BORNAGAIN_GUI_MODELS_INSTRUMENT_RESOLUTIONFUNCTIONITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include <memory>
 
 class IResolutionFunction2D;
diff --git a/GUI/Models/Instrument/SpecularBeamInclinationItem.cpp b/GUI/Models/Instrument/SpecularBeamInclinationItem.cpp
index 85339b4a175a56f935c5ff3ed6b435a380c1682e..87aeb0a2162153b0d4ad899db305d93021b35fba 100644
--- a/GUI/Models/Instrument/SpecularBeamInclinationItem.cpp
+++ b/GUI/Models/Instrument/SpecularBeamInclinationItem.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Models/Instrument/SpecularBeamInclinationItem.h"
 #include "Base/Const/Units.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Data/PointwiseAxisItem.h"
 
 namespace {
diff --git a/GUI/Models/Job/JobItem.h b/GUI/Models/Job/JobItem.h
index 178a8db0e80bfa9aa91f3d40dc2873f5599f802f..67636153fa47c14d18d78daa3fd04839a043572b 100644
--- a/GUI/Models/Job/JobItem.h
+++ b/GUI/Models/Job/JobItem.h
@@ -15,9 +15,9 @@
 #ifndef BORNAGAIN_GUI_MODELS_JOB_JOBITEM_H
 #define BORNAGAIN_GUI_MODELS_JOB_JOBITEM_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "GUI/Models/Job/JobStatus.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 class DataItem;
 class Data1DViewItem;
diff --git a/GUI/Models/Job/JobItemUtils.h b/GUI/Models/Job/JobItemUtils.h
index ee34c9cd8f157818a729098950930afd8aaccb2c..33390d9b6bc4b2ce58de16e32a63a0b23d5fd5d5 100644
--- a/GUI/Models/Job/JobItemUtils.h
+++ b/GUI/Models/Job/JobItemUtils.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_JOB_JOBITEMUTILS_H
 
 #include "Device/Detector/IDetector.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include <QMap>
 
 class DataItem;
diff --git a/GUI/Models/Job/JobModel.cpp b/GUI/Models/Job/JobModel.cpp
index 884ea475696d2f41ec560cca8638064dd92c5448..376c5ac9be7a9118c24ec96f11dad42e5d40b3ba 100644
--- a/GUI/Models/Job/JobModel.cpp
+++ b/GUI/Models/Job/JobModel.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Job/JobModel.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
 #include "GUI/Models/Job/JobItem.h"
diff --git a/GUI/Models/Job/JobModel.h b/GUI/Models/Job/JobModel.h
index 258403650ef114f7efcea76b72778654cfdefdd8..2d9d7d1dbdf6ebd7c7a33eccd826322ae1af1526 100644
--- a/GUI/Models/Job/JobModel.h
+++ b/GUI/Models/Job/JobModel.h
@@ -14,7 +14,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_JOB_JOBMODEL_H
 #define BORNAGAIN_GUI_MODELS_JOB_JOBMODEL_H
 
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 class JobQueueData;
 class JobItem;
 class MultiLayerItem;
diff --git a/GUI/Models/Job/JobModelFunctions.cpp b/GUI/Models/Job/JobModelFunctions.cpp
index b12fa33b04130b495bad90599b327a1e729a1a7c..97e564288cf3d8e7575f6ef1f27ce64453e59afa 100644
--- a/GUI/Models/Job/JobModelFunctions.cpp
+++ b/GUI/Models/Job/JobModelFunctions.cpp
@@ -20,7 +20,7 @@
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Parameter/FitParameterItems.h"
 #include "GUI/Models/Fit/FitSuiteItem.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
 #include "GUI/Models/X1/ItemFileNameUtils.h"
diff --git a/GUI/Models/Material/MaterialDataItems.h b/GUI/Models/Material/MaterialDataItems.h
index 3346932242f680621ef33f2b07a039565bc16db2..cf3306fe2963958555b9d25885eb548a65069443 100644
--- a/GUI/Models/Material/MaterialDataItems.h
+++ b/GUI/Models/Material/MaterialDataItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_MATERIAL_MATERIALDATAITEMS_H
 #define BORNAGAIN_GUI_MODELS_MATERIAL_MATERIALDATAITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class BA_CORE_API_ MaterialDataItem : public SessionItem {
 protected:
diff --git a/GUI/Models/Material/MaterialItem.cpp b/GUI/Models/Material/MaterialItem.cpp
index eead47b5aa9b33123b7aa89249d9e11a41e91373..d93fc9ab243db8421912db35979858e3891275f0 100644
--- a/GUI/Models/Material/MaterialItem.cpp
+++ b/GUI/Models/Material/MaterialItem.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Models/Material/MaterialItem.h"
 #include "Base/Utils/Assert.h"
 #include "GUI/Models/Types/DoubleDescriptor.h"
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include "GUI/Models/Material/MaterialDataItems.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
 #include "GUI/Models/Types/VectorItem.h"
diff --git a/GUI/Models/Material/MaterialItem.h b/GUI/Models/Material/MaterialItem.h
index 8041e176b18c5ea66c4bf632c8a8f903a4f5a9fd..34f9398a5c357af0d244b3495c9b2e88caa80d86 100644
--- a/GUI/Models/Material/MaterialItem.h
+++ b/GUI/Models/Material/MaterialItem.h
@@ -17,7 +17,7 @@
 
 #include "Base/Types/Complex.h"
 #include "Base/Vector/Vectors3D.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class Material;
 class DoubleDescriptor;
diff --git a/GUI/Models/Material/MaterialItemContainer.cpp b/GUI/Models/Material/MaterialItemContainer.cpp
index bf85764cd34d0c61f04f1afc2010a085d005e410..a9c7bd5143b84e7fada8598d3b451c063fa084ae 100644
--- a/GUI/Models/Material/MaterialItemContainer.cpp
+++ b/GUI/Models/Material/MaterialItemContainer.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Models/Material/MaterialItemContainer.h"
 #include "GUI/Models/Material/MaterialItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/utils/Helpers.h"
 
 MaterialItemContainer::MaterialItemContainer() : SessionItem(M_TYPE)
diff --git a/GUI/Models/Material/MaterialItemContainer.h b/GUI/Models/Material/MaterialItemContainer.h
index ed31f278548b32dfb5744107c91e5aa746253a06..d4eed158dfd4b609c058f49ba6a653d321f960f3 100644
--- a/GUI/Models/Material/MaterialItemContainer.h
+++ b/GUI/Models/Material/MaterialItemContainer.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_MATERIAL_MATERIALITEMCONTAINER_H
 #define BORNAGAIN_GUI_MODELS_MATERIAL_MATERIALITEMCONTAINER_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class MaterialItem;
 
diff --git a/GUI/Models/Material/MaterialModel.h b/GUI/Models/Material/MaterialModel.h
index 2610651b3161b16b81eedf007204858b3759d2dc..20a834a46c24c0cfd708a9d1a16483319e875d68 100644
--- a/GUI/Models/Material/MaterialModel.h
+++ b/GUI/Models/Material/MaterialModel.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_MATERIAL_MATERIALMODEL_H
 #define BORNAGAIN_GUI_MODELS_MATERIAL_MATERIALMODEL_H
 
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 class MaterialItem;
 
diff --git a/GUI/Models/Parameter/DistributionItems.cpp b/GUI/Models/Parameter/DistributionItems.cpp
index 779c68e02b58a2944ff672ee07a06a9d30bde1b6..92c858692273f7f543473d58de54176620a9e0f8 100644
--- a/GUI/Models/Parameter/DistributionItems.cpp
+++ b/GUI/Models/Parameter/DistributionItems.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Parameter/DistributionItems.h"
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include "GUI/Models/Types/RealLimitsItems.h"
 #include "Param/Distrib/Distributions.h"
 #include "Param/Distrib/RangedDistributions.h"
diff --git a/GUI/Models/Parameter/DistributionItems.h b/GUI/Models/Parameter/DistributionItems.h
index 32e6ffed303ac2a1d9da0df2805923107cf848bb..d6618f0eb4293fe66d7087a665d8de53c47bc750 100644
--- a/GUI/Models/Parameter/DistributionItems.h
+++ b/GUI/Models/Parameter/DistributionItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_PARAMETER_DISTRIBUTIONITEMS_H
 #define BORNAGAIN_GUI_MODELS_PARAMETER_DISTRIBUTIONITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class IDistribution1D;
 class IRangedDistribution;
diff --git a/GUI/Models/Parameter/FilterPropertyProxy.cpp b/GUI/Models/Parameter/FilterPropertyProxy.cpp
index 947825224758658d0196b85cefd307f0b95f930a..f7aad04591aabfba83133871ce8742c50b7a586d 100644
--- a/GUI/Models/Parameter/FilterPropertyProxy.cpp
+++ b/GUI/Models/Parameter/FilterPropertyProxy.cpp
@@ -13,9 +13,9 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Parameter/FilterPropertyProxy.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/X6/PropertyItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Types/VectorItem.h"
 
 int FilterPropertyProxy::columnCount(const QModelIndex& parent) const
diff --git a/GUI/Models/Parameter/FitParameterHelper.cpp b/GUI/Models/Parameter/FitParameterHelper.cpp
index 3e1e9bf8de75ab026f7a637af231f8d09b6a7c2d..dbbd980b92cd679d8b4b80451694859408540355 100644
--- a/GUI/Models/Parameter/FitParameterHelper.cpp
+++ b/GUI/Models/Parameter/FitParameterHelper.cpp
@@ -16,7 +16,7 @@
 #include "GUI/Models/Parameter/FitParameterItems.h"
 #include "GUI/Models/Job/JobItem.h"
 #include "GUI/Models/Job/JobModel.h"
-#include "GUI/Models/Session/ModelPath.h"
+#include "GUI/Session/ModelPath.h"
 #include "GUI/Models/Parameter/ParameterTreeItems.h"
 
 //! Creates fit parameter from given ParameterItem, sets starting value to the value
diff --git a/GUI/Models/Parameter/FitParameterItems.cpp b/GUI/Models/Parameter/FitParameterItems.cpp
index c73e18a4d6cbd418719804d7f3a1c611e51273f3..fb6d97ec61db30c9861422472480f9b8ff72b18a 100644
--- a/GUI/Models/Parameter/FitParameterItems.cpp
+++ b/GUI/Models/Parameter/FitParameterItems.cpp
@@ -15,10 +15,10 @@
 #include "GUI/Models/Parameter/FitParameterItems.h"
 #include "Base/Utils/Assert.h"
 #include "Fit/Param/Parameters.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Job/JobItem.h"
-#include "GUI/Models/Session/ModelPath.h"
+#include "GUI/Session/ModelPath.h"
 #include "GUI/Models/Parameter/ParameterTreeItems.h"
 #include <cmath>
 
diff --git a/GUI/Models/Parameter/FitParameterItems.h b/GUI/Models/Parameter/FitParameterItems.h
index 404dfddf7c9324557257fda8b5f2b6a3feed3e30..7bdf7046feccef2654fa7f5e82ef0f169a5bfa7f 100644
--- a/GUI/Models/Parameter/FitParameterItems.h
+++ b/GUI/Models/Parameter/FitParameterItems.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_PARAMETER_FITPARAMETERITEMS_H
 
 #include "Fit/Param/AttLimits.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class FitParameterLinkItem;
 
diff --git a/GUI/Models/Parameter/ParameterTreeItems.cpp b/GUI/Models/Parameter/ParameterTreeItems.cpp
index 7693f97bb94c647ab78615101a074508fa50c3df..8187f9d3b53bfb8290de30eb7598eaff2fc03dd2 100644
--- a/GUI/Models/Parameter/ParameterTreeItems.cpp
+++ b/GUI/Models/Parameter/ParameterTreeItems.cpp
@@ -15,8 +15,8 @@
 #include "GUI/Models/Parameter/ParameterTreeItems.h"
 #include "GUI/Models/Parameter/FitParameterHelper.h"
 #include "GUI/Models/Job/JobItem.h"
-#include "GUI/Models/Session/ModelPath.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/ModelPath.h"
+#include "GUI/Session/SessionModel.h"
 
 // ----------------------------------------------------------------------------
 
diff --git a/GUI/Models/Parameter/ParameterTreeItems.h b/GUI/Models/Parameter/ParameterTreeItems.h
index 13fa10873cd62396693660ee0b494e9897995ff9..9f9f117dd5d5f8b4937c50af06dbc1fd578f22b9 100644
--- a/GUI/Models/Parameter/ParameterTreeItems.h
+++ b/GUI/Models/Parameter/ParameterTreeItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_PARAMETER_PARAMETERTREEITEMS_H
 #define BORNAGAIN_GUI_MODELS_PARAMETER_PARAMETERTREEITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 //! ParameterTreeItems is a collection of items necessary to form a tuning tree for
 //! real time widget.
diff --git a/GUI/Models/Parameter/ParameterTreeUtils.cpp b/GUI/Models/Parameter/ParameterTreeUtils.cpp
index 2d321545ebcfb86cd3bb72fa42165d82ad4d0272..b88d358ac38fa1764ba08c3c6dc704942f2f9a3d 100644
--- a/GUI/Models/Parameter/ParameterTreeUtils.cpp
+++ b/GUI/Models/Parameter/ParameterTreeUtils.cpp
@@ -15,11 +15,11 @@
 #include "GUI/Models/Parameter/ParameterTreeUtils.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Parameter/FitParameterHelper.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
 #include "GUI/Models/Job/JobItem.h"
 #include "GUI/Models/Material/MaterialItemContainer.h"
-#include "GUI/Models/Session/ModelPath.h"
+#include "GUI/Session/ModelPath.h"
 #include "GUI/Models/Sample/MultiLayerItem.h"
 #include "GUI/Models/Parameter/ParameterTreeItems.h"
 #include "GUI/Models/X6/PropertyItem.h"
diff --git a/GUI/Models/Parameter/ParameterTuningModel.cpp b/GUI/Models/Parameter/ParameterTuningModel.cpp
index c526100eafade14ce1a0190f0303b8f80a54352b..636689ce9c0d9709c9678ed5be9ff6b5ffa1be57 100644
--- a/GUI/Models/Parameter/ParameterTuningModel.cpp
+++ b/GUI/Models/Parameter/ParameterTuningModel.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Models/Parameter/ParameterTuningModel.h"
 #include "GUI/Models/Parameter/FitParameterHelper.h"
 #include "GUI/Models/Parameter/ParameterTreeItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include <QMimeData>
 
 ParameterTuningModel::ParameterTuningModel(QObject* parent) : FilterPropertyProxy(2, parent) {}
diff --git a/GUI/Models/X3/ComponentProxyModel.cpp b/GUI/Models/Proxy/ComponentProxyModel.cpp
similarity index 95%
rename from GUI/Models/X3/ComponentProxyModel.cpp
rename to GUI/Models/Proxy/ComponentProxyModel.cpp
index d3bc76f18796aacc42036e529ce78e67415b1db7..06d2f07eb7c71a5c2f3d5cf572d2ca54eb647248 100644
--- a/GUI/Models/X3/ComponentProxyModel.cpp
+++ b/GUI/Models/Proxy/ComponentProxyModel.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X3/ComponentProxyModel.cpp
+//! @file      GUI/Models/Proxy/ComponentProxyModel.cpp
 //! @brief     Implements class ComponentProxyModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X3/ComponentProxyModel.h"
-#include "GUI/Models/X3/ComponentProxyStrategy.h"
-#include "GUI/Models/X5/GroupItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Proxy/ComponentProxyModel.h"
+#include "GUI/Models/Proxy/ComponentProxyStrategy.h"
+#include "GUI/Models/Group/GroupItem.h"
+#include "GUI/Session/SessionModel.h"
 #include <QSet>
 #include <functional>
 
diff --git a/GUI/Models/X3/ComponentProxyModel.h b/GUI/Models/Proxy/ComponentProxyModel.h
similarity index 89%
rename from GUI/Models/X3/ComponentProxyModel.h
rename to GUI/Models/Proxy/ComponentProxyModel.h
index ef364295c9c44292177bcfbeaab4b1ad9209eea0..9466a5e895aa433a26b085c4d98df2badbf41d2a 100644
--- a/GUI/Models/X3/ComponentProxyModel.h
+++ b/GUI/Models/Proxy/ComponentProxyModel.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X3/ComponentProxyModel.h
+//! @file      GUI/Models/Proxy/ComponentProxyModel.h
 //! @brief     Defines class ComponentProxyModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X3_COMPONENTPROXYMODEL_H
-#define BORNAGAIN_GUI_MODELS_X3_COMPONENTPROXYMODEL_H
+#ifndef BORNAGAIN_GUI_MODELS_PROXY_COMPONENTPROXYMODEL_H
+#define BORNAGAIN_GUI_MODELS_PROXY_COMPONENTPROXYMODEL_H
 
-#include "GUI/Models/X/ProxyModelStrategy.h"
+#include "GUI/Models/Proxy/ProxyModelStrategy.h"
 #include <QAbstractProxyModel>
 #include <QMap>
 #include <QPersistentModelIndex>
@@ -68,4 +68,4 @@ private:
     std::unique_ptr<ProxyModelStrategy> m_proxyStrategy;
 };
 
-#endif // BORNAGAIN_GUI_MODELS_X3_COMPONENTPROXYMODEL_H
+#endif // BORNAGAIN_GUI_MODELS_PROXY_COMPONENTPROXYMODEL_H
diff --git a/GUI/Models/X3/ComponentProxyStrategy.cpp b/GUI/Models/Proxy/ComponentProxyStrategy.cpp
similarity index 94%
rename from GUI/Models/X3/ComponentProxyStrategy.cpp
rename to GUI/Models/Proxy/ComponentProxyStrategy.cpp
index 9ad61c08d6c3d1c63b7235e8a3ac399768d127f5..0429441b7b25502130361f21927c41ca240cedb0 100644
--- a/GUI/Models/X3/ComponentProxyStrategy.cpp
+++ b/GUI/Models/Proxy/ComponentProxyStrategy.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X3/ComponentProxyStrategy.cpp
+//! @file      GUI/Models/Proxy/ComponentProxyStrategy.cpp
 //! @brief     Implements class ComponentProxyStrategy
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,12 +12,12 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X3/ComponentProxyStrategy.h"
-#include "GUI/Models/X3/ComponentProxyModel.h"
-#include "GUI/Models/X3/ComponentUtils.h"
-#include "GUI/Models/X5/GroupItem.h"
-#include "GUI/Models/Session/ModelPath.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Proxy/ComponentProxyStrategy.h"
+#include "GUI/Models/Proxy/ComponentProxyModel.h"
+#include "GUI/Models/Proxy/ComponentUtils.h"
+#include "GUI/Models/Group/GroupItem.h"
+#include "GUI/Session/ModelPath.h"
+#include "GUI/Session/SessionModel.h"
 
 void ComponentProxyStrategy::onDataChanged(SessionModel* source, ComponentProxyModel* proxy)
 {
diff --git a/GUI/Models/X3/ComponentProxyStrategy.h b/GUI/Models/Proxy/ComponentProxyStrategy.h
similarity index 83%
rename from GUI/Models/X3/ComponentProxyStrategy.h
rename to GUI/Models/Proxy/ComponentProxyStrategy.h
index f6ae65be508b5126296ba4fe80b7a5f7a4f15fc8..bea1eb3f16a6fdf8c743b6817086f4ca2c98440d 100644
--- a/GUI/Models/X3/ComponentProxyStrategy.h
+++ b/GUI/Models/Proxy/ComponentProxyStrategy.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X3/ComponentProxyStrategy.h
+//! @file      GUI/Models/Proxy/ComponentProxyStrategy.h
 //! @brief     Defines class ComponentProxyStrategy
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X3_COMPONENTPROXYSTRATEGY_H
-#define BORNAGAIN_GUI_MODELS_X3_COMPONENTPROXYSTRATEGY_H
+#ifndef BORNAGAIN_GUI_MODELS_PROXY_COMPONENTPROXYSTRATEGY_H
+#define BORNAGAIN_GUI_MODELS_PROXY_COMPONENTPROXYSTRATEGY_H
 
-#include "GUI/Models/X/ProxyModelStrategy.h"
+#include "GUI/Models/Proxy/ProxyModelStrategy.h"
 
 //! Strategy for ComponentProxyModel which hides extra level of GroupProperty.
 
@@ -39,4 +39,4 @@ private:
     int parentVisibleRow(const SessionItem& item);
 };
 
-#endif // BORNAGAIN_GUI_MODELS_X3_COMPONENTPROXYSTRATEGY_H
+#endif // BORNAGAIN_GUI_MODELS_PROXY_COMPONENTPROXYSTRATEGY_H
diff --git a/GUI/Models/X3/ComponentUtils.cpp b/GUI/Models/Proxy/ComponentUtils.cpp
similarity index 94%
rename from GUI/Models/X3/ComponentUtils.cpp
rename to GUI/Models/Proxy/ComponentUtils.cpp
index 1a1db702620cfa7051945d2e91dd411e543f84c6..41b76b93eda6c32e8e745b57a29811b4b750b45e 100644
--- a/GUI/Models/X3/ComponentUtils.cpp
+++ b/GUI/Models/Proxy/ComponentUtils.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X3/ComponentUtils.cpp
+//! @file      GUI/Models/Proxy/ComponentUtils.cpp
 //! @brief     Implements ComponentUtils namespace
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,9 +12,9 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X3/ComponentUtils.h"
+#include "GUI/Models/Proxy/ComponentUtils.h"
 #include "GUI/Models/Data/AxesItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Material/MaterialDataItems.h"
 #include "GUI/Models/X6/PropertyItem.h"
 #include "GUI/Models/Types/VectorItem.h"
diff --git a/GUI/Models/X3/ComponentUtils.h b/GUI/Models/Proxy/ComponentUtils.h
similarity index 84%
rename from GUI/Models/X3/ComponentUtils.h
rename to GUI/Models/Proxy/ComponentUtils.h
index f6735bc3ac3b89f73547227de4b554b5cec5db96..f46a860e9e1f419c000b5efc402c2071bde25851 100644
--- a/GUI/Models/X3/ComponentUtils.h
+++ b/GUI/Models/Proxy/ComponentUtils.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X3/ComponentUtils.h
+//! @file      GUI/Models/Proxy/ComponentUtils.h
 //! @brief     Defines namespace GUI::Model::ComponentUtils
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X3_COMPONENTUTILS_H
-#define BORNAGAIN_GUI_MODELS_X3_COMPONENTUTILS_H
+#ifndef BORNAGAIN_GUI_MODELS_PROXY_COMPONENTUTILS_H
+#define BORNAGAIN_GUI_MODELS_PROXY_COMPONENTUTILS_H
 
 #include <QList>
 #include <QStringList>
@@ -32,4 +32,4 @@ QList<const SessionItem*> componentItems(const SessionItem& item);
 
 } // namespace GUI::Model::ComponentUtils
 
-#endif // BORNAGAIN_GUI_MODELS_X3_COMPONENTUTILS_H
+#endif // BORNAGAIN_GUI_MODELS_PROXY_COMPONENTUTILS_H
diff --git a/GUI/Models/X/ProxyModelStrategy.cpp b/GUI/Models/Proxy/ProxyModelStrategy.cpp
similarity index 94%
rename from GUI/Models/X/ProxyModelStrategy.cpp
rename to GUI/Models/Proxy/ProxyModelStrategy.cpp
index ddfa111a087e5c52f4d90a77a89dc7c587afe32a..3eb49282aa7fd4279756d407d9dd51df96f8f747 100644
--- a/GUI/Models/X/ProxyModelStrategy.cpp
+++ b/GUI/Models/Proxy/ProxyModelStrategy.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X/ProxyModelStrategy.cpp
+//! @file      GUI/Models/Proxy/ProxyModelStrategy.cpp
 //! @brief     Implements class ProxyModelStrategy
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,9 +12,9 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X3/ComponentProxyModel.h"
+#include "GUI/Models/Proxy/ComponentProxyModel.h"
 #include "GUI/Models/X2/ModelUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 ProxyModelStrategy::ProxyModelStrategy() : m_source(nullptr), m_proxy(nullptr) {}
 
diff --git a/GUI/Models/X/ProxyModelStrategy.h b/GUI/Models/Proxy/ProxyModelStrategy.h
similarity index 89%
rename from GUI/Models/X/ProxyModelStrategy.h
rename to GUI/Models/Proxy/ProxyModelStrategy.h
index 95da103ebdc17026ca72b226fd75ebce4e4d7bd6..b0c27cb86ec1aa259050506e7bbdd5924ddfebd2 100644
--- a/GUI/Models/X/ProxyModelStrategy.h
+++ b/GUI/Models/Proxy/ProxyModelStrategy.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/X/ProxyModelStrategy.h
+//! @file      GUI/Models/Proxy/ProxyModelStrategy.h
 //! @brief     Defines class ProxyModelStrategy
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_X_PROXYMODELSTRATEGY_H
-#define BORNAGAIN_GUI_MODELS_X_PROXYMODELSTRATEGY_H
+#ifndef BORNAGAIN_GUI_MODELS_PROXY_PROXYMODELSTRATEGY_H
+#define BORNAGAIN_GUI_MODELS_PROXY_PROXYMODELSTRATEGY_H
 
 #include <QPersistentModelIndex>
 
@@ -59,4 +59,4 @@ protected:
     bool processSourceIndex(const QModelIndex& index);
 };
 
-#endif // BORNAGAIN_GUI_MODELS_X_PROXYMODELSTRATEGY_H
+#endif // BORNAGAIN_GUI_MODELS_PROXY_PROXYMODELSTRATEGY_H
diff --git a/GUI/Models/Sample/FTDecayFunctionItems.h b/GUI/Models/Sample/FTDecayFunctionItems.h
index 0bf82dba079a8b20e4b0c504b580fe6237b0bcae..cb677d89efa719640ee0399a95e1faa01d6fe589 100644
--- a/GUI/Models/Sample/FTDecayFunctionItems.h
+++ b/GUI/Models/Sample/FTDecayFunctionItems.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_SAMPLE_FTDECAYFUNCTIONITEMS_H
 
 #include "GUI/Models/Types/DoubleDescriptor.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "Sample/Correlations/FTDecay1D.h"
 #include "Sample/Correlations/FTDecay2D.h"
 
diff --git a/GUI/Models/Sample/FTDistributionItems.h b/GUI/Models/Sample/FTDistributionItems.h
index 1b18f152b60a4e0778b8b6031f82f63dbc612400..8785ce628701c4021e97198aaf5c243c8f46d4ad 100644
--- a/GUI/Models/Sample/FTDistributionItems.h
+++ b/GUI/Models/Sample/FTDistributionItems.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_SAMPLE_FTDISTRIBUTIONITEMS_H
 
 #include "GUI/Models/Types/DoubleDescriptor.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "Sample/Correlations/FTDistributions1D.h"
 #include "Sample/Correlations/FTDistributions2D.h"
 
diff --git a/GUI/Models/Sample/FormFactorItems.cpp b/GUI/Models/Sample/FormFactorItems.cpp
index e2c9803f3521610da678edc70bd358f789b029c5..de9527b0900eb6e4ab8b246cb69c43b8496b35fe 100644
--- a/GUI/Models/Sample/FormFactorItems.cpp
+++ b/GUI/Models/Sample/FormFactorItems.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Models/Sample/FormFactorItems.h"
 #include "Base/Const/Units.h"
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include "Sample/HardParticle/HardParticles.h"
 
 /* ------------------------------------------------ */
diff --git a/GUI/Models/Sample/FormFactorItems.h b/GUI/Models/Sample/FormFactorItems.h
index 72f8b6c079afcef4eefa5d46f99f444e81ed23fe..0d106a1621d5471015c9115df0347ce0118c563f 100644
--- a/GUI/Models/Sample/FormFactorItems.h
+++ b/GUI/Models/Sample/FormFactorItems.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_SAMPLE_FORMFACTORITEMS_H
 
 #include "DoubleDescriptor.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class IFormFactor;
 class GroupInfo;
diff --git a/GUI/Models/Sample/InterferenceItems.cpp b/GUI/Models/Sample/InterferenceItems.cpp
index 1586ed5775e89c5349958021b6be20228bdf4536..b52729813101945070cca134de004ac448b4bc32 100644
--- a/GUI/Models/Sample/InterferenceItems.cpp
+++ b/GUI/Models/Sample/InterferenceItems.cpp
@@ -14,11 +14,11 @@
 
 #include "GUI/Models/Sample/InterferenceItems.h"
 #include "Base/Const/Units.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Types/DoubleDescriptor.h"
 #include "GUI/Models/Sample/FTDecayFunctionItems.h"
 #include "GUI/Models/Sample/FTDistributionItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Sample/Lattice2DItems.h"
 #include "Sample/Aggregate/Interferences.h"
 
diff --git a/GUI/Models/Sample/InterferenceItems.h b/GUI/Models/Sample/InterferenceItems.h
index 1531082fec77329e962eb5f129f0ba4c4a8b4a51..40148c6838a22184e7e5b05665463da719e71502 100644
--- a/GUI/Models/Sample/InterferenceItems.h
+++ b/GUI/Models/Sample/InterferenceItems.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_SAMPLE_INTERFERENCEITEMS_H
 
 #include "GUI/Models/X/SelectionDescriptor.h"
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 
 class FTDecayFunction1DItem;
 class FTDecayFunction2DItem;
diff --git a/GUI/Models/Sample/Lattice2DItems.h b/GUI/Models/Sample/Lattice2DItems.h
index 6fb8e8c025f165587e4aebea698d122628f0eeb5..c6ed5fd793794813cae0c328f480e37d87d45fb5 100644
--- a/GUI/Models/Sample/Lattice2DItems.h
+++ b/GUI/Models/Sample/Lattice2DItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_SAMPLE_LATTICE2DITEMS_H
 #define BORNAGAIN_GUI_MODELS_SAMPLE_LATTICE2DITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 class Lattice2D;
 
 class Lattice2DItem : public SessionItem {
diff --git a/GUI/Models/Sample/LayerItem.cpp b/GUI/Models/Sample/LayerItem.cpp
index 0f47eed2fe44b096d931ac361cf1e05cb44261cc..8ab0d0e5fc68f65dfc59780515b7c7072ae8201c 100644
--- a/GUI/Models/Sample/LayerItem.cpp
+++ b/GUI/Models/Sample/LayerItem.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Models/Sample/LayerItem.h"
 #include "GUI/Models/Types/DoubleDescriptor.h"
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include "GUI/Models/Sample/LayerRoughnessItems.h"
 #include "GUI/Models/Material/MaterialItemUtils.h"
 #include "GUI/Models/Sample/MultiLayerItem.h"
diff --git a/GUI/Models/Sample/LayerRoughnessItems.h b/GUI/Models/Sample/LayerRoughnessItems.h
index dd79a50eef8c35f4106c5448ee8de9e2a06df5a2..be3662647979bbbc96dcc6b601b7f4638d66e24d 100644
--- a/GUI/Models/Sample/LayerRoughnessItems.h
+++ b/GUI/Models/Sample/LayerRoughnessItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_SAMPLE_LAYERROUGHNESSITEMS_H
 #define BORNAGAIN_GUI_MODELS_SAMPLE_LAYERROUGHNESSITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class DoubleDescriptor;
 
diff --git a/GUI/Models/Sample/MesoCrystalItem.cpp b/GUI/Models/Sample/MesoCrystalItem.cpp
index d807938e9b5d72b411e0d1fec8c035dfbb7d5f7e..b0f1902012b09f59bb4a30f34833431694b1b223 100644
--- a/GUI/Models/Sample/MesoCrystalItem.cpp
+++ b/GUI/Models/Sample/MesoCrystalItem.cpp
@@ -15,11 +15,11 @@
 #include "GUI/Models/Sample/MesoCrystalItem.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include "GUI/Models/Sample/ParticleCompositionItem.h"
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "GUI/Models/Domain/TransformToDomain.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
 #include "GUI/Models/Types/VectorItem.h"
diff --git a/GUI/Models/Sample/MesoCrystalItem.h b/GUI/Models/Sample/MesoCrystalItem.h
index 8328d1ecbfda8542e5e814dbafc317c1c45df0fa..a0df24592eaa8cda172328e89fd131405a35a73f 100644
--- a/GUI/Models/Sample/MesoCrystalItem.h
+++ b/GUI/Models/Sample/MesoCrystalItem.h
@@ -18,7 +18,7 @@
 #include "Base/Vector/Vectors3D.h"
 #include "GUI/Models/X1/ItemWithParticles.h"
 #include "GUI/Models/X/SelectionDescriptor.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "Sample/Lattice/Lattice3D.h"
 
 class FormFactorItem;
diff --git a/GUI/Models/Sample/MultiLayerItem.cpp b/GUI/Models/Sample/MultiLayerItem.cpp
index 39737db71c4bf2df60a754eb34ef39b3cc51b0d6..c7973160c8bce6f27ab99611557aa23aa298c691 100644
--- a/GUI/Models/Sample/MultiLayerItem.cpp
+++ b/GUI/Models/Sample/MultiLayerItem.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Models/Sample/MultiLayerItem.h"
 #include "GUI/Models/Types/DoubleDescriptor.h"
 #include "GUI/Models/Sample/LayerItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
 #include "GUI/Models/Types/VectorItem.h"
 
diff --git a/GUI/Models/Sample/MultiLayerItem.h b/GUI/Models/Sample/MultiLayerItem.h
index 353d49e5641978f8d693d8a324bf76e3d78ae454..f254d0b5a48034e3fe6e686286c88a977f0ff9ff 100644
--- a/GUI/Models/Sample/MultiLayerItem.h
+++ b/GUI/Models/Sample/MultiLayerItem.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_SAMPLE_MULTILAYERITEM_H
 
 #include "Base/Vector/Vectors3D.h"
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 
 class LayerItem;
 class ItemWithMaterial;
diff --git a/GUI/Models/Sample/ParticleCompositionItem.cpp b/GUI/Models/Sample/ParticleCompositionItem.cpp
index e6f541185b47292b6e204dffceab7324779689f1..b9916ae76d3ad33bea30adad59b798a28b265581 100644
--- a/GUI/Models/Sample/ParticleCompositionItem.cpp
+++ b/GUI/Models/Sample/ParticleCompositionItem.cpp
@@ -17,8 +17,8 @@
 #include "GUI/Models/Sample/MesoCrystalItem.h"
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Domain/TransformToDomain.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Sample/Particle/MesoCrystal.h"
diff --git a/GUI/Models/Sample/ParticleCoreShellItem.cpp b/GUI/Models/Sample/ParticleCoreShellItem.cpp
index 6851cc492eb708e1d6fdf025e3dcc7151ec433ed..591ec59c0306154d0b414d06c5b50b1a6593df47 100644
--- a/GUI/Models/Sample/ParticleCoreShellItem.cpp
+++ b/GUI/Models/Sample/ParticleCoreShellItem.cpp
@@ -15,10 +15,10 @@
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
 #include "GUI/Models/Types/DoubleDescriptor.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/Session/ModelPath.h"
+#include "GUI/Session/ModelPath.h"
 #include "GUI/Models/Sample/ParticleItem.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Domain/TransformToDomain.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Sample/Particle/Particle.h"
diff --git a/GUI/Models/Sample/ParticleItem.cpp b/GUI/Models/Sample/ParticleItem.cpp
index 68afe9d67e9a90e0431d27956c7b4417ebcf6de7..c6f5898ddf68f1e97dfe71957e2185d1ca4f3d76 100644
--- a/GUI/Models/Sample/ParticleItem.cpp
+++ b/GUI/Models/Sample/ParticleItem.cpp
@@ -14,11 +14,11 @@
 
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Material/MaterialItemUtils.h"
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
 #include "GUI/Models/Sample/ParticleLayoutItem.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "GUI/Models/Domain/TransformToDomain.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Sample/Particle/Particle.h"
diff --git a/GUI/Models/Sample/ParticleLayoutItem.cpp b/GUI/Models/Sample/ParticleLayoutItem.cpp
index 23603df7c5e3d6b93b7fc41a7ff38f68e8f55ef0..9db9f333e872c3d68a59fdde1c5f1f34d0ba545c 100644
--- a/GUI/Models/Sample/ParticleLayoutItem.cpp
+++ b/GUI/Models/Sample/ParticleLayoutItem.cpp
@@ -15,13 +15,13 @@
 #include "GUI/Models/Sample/ParticleLayoutItem.h"
 #include "GUI/Models/Types/DoubleDescriptor.h"
 #include "GUI/Models/Sample/InterferenceItems.h"
-#include "GUI/Models/X1/ItemCatalog.h"
+#include "GUI/Models/Group/ItemCatalog.h"
 #include "GUI/Models/Sample/Lattice2DItems.h"
 #include "GUI/Models/Sample/MesoCrystalItem.h"
 #include "GUI/Models/Sample/ParticleCompositionItem.h"
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 namespace {
 
diff --git a/GUI/Models/Sample/ParticleLayoutItem.h b/GUI/Models/Sample/ParticleLayoutItem.h
index 7b78d70d44d839a00760d6e49bbb7c9ecbabee09..7a8e470a85fab1ef006e51c35e5a1eb0d9b9bdc8 100644
--- a/GUI/Models/Sample/ParticleLayoutItem.h
+++ b/GUI/Models/Sample/ParticleLayoutItem.h
@@ -16,8 +16,8 @@
 #define BORNAGAIN_GUI_MODELS_SAMPLE_PARTICLELAYOUTITEM_H
 
 #include "GUI/Models/X/SelectionDescriptor.h"
-#include "GUI/Models/Session/SessionGraphicsItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionModel.h"
 
 class InterferenceItem;
 class ItemWithParticles;
diff --git a/GUI/Models/Sample/SampleModel.h b/GUI/Models/Sample/SampleModel.h
index ffd39aa1f9efb8cb5f940cf37bab3620b1ddc285..0a6d9b8b21e2a6d77fca2846b40e7116cba79c69 100644
--- a/GUI/Models/Sample/SampleModel.h
+++ b/GUI/Models/Sample/SampleModel.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_SAMPLE_SAMPLEMODEL_H
 #define BORNAGAIN_GUI_MODELS_SAMPLE_SAMPLEMODEL_H
 
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 class MultiLayerItem;
 class ItemWithMaterial;
diff --git a/GUI/Models/Types/DoubleDescriptor.cpp b/GUI/Models/Types/DoubleDescriptor.cpp
index 5d22d10d4ed4d678893d6b109a61b82d9cd8b79c..65f551929f34bcb79e4ed2ddc28ac494851e815a 100644
--- a/GUI/Models/Types/DoubleDescriptor.cpp
+++ b/GUI/Models/Types/DoubleDescriptor.cpp
@@ -13,8 +13,8 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Types/DoubleDescriptor.h"
-#include "GUI/Models/Session/ModelPath.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/ModelPath.h"
+#include "GUI/Session/SessionItem.h"
 
 DoubleDescriptor::DoubleDescriptor(const QString& label, SessionItem* item,
                                    const variant<QString, Unit>& unit)
diff --git a/GUI/Models/Types/RealLimitsItems.h b/GUI/Models/Types/RealLimitsItems.h
index ecc26ad8eba4d9524bf390439115be0d121bf6e1..da93d13b632cd0c9cd2137fe55e6c083bdf09f46 100644
--- a/GUI/Models/Types/RealLimitsItems.h
+++ b/GUI/Models/Types/RealLimitsItems.h
@@ -17,7 +17,7 @@
 
 #include <optional>
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class RealLimitsItem : public SessionItem {
 private:
diff --git a/GUI/Models/Types/UIntDescriptor.cpp b/GUI/Models/Types/UIntDescriptor.cpp
index 026fa6d1c697ad79e2f29ef85014f53ccd2ea784..d530752d4a025d253ab5895f7f7b3094f292b2a7 100644
--- a/GUI/Models/Types/UIntDescriptor.cpp
+++ b/GUI/Models/Types/UIntDescriptor.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/Types/UIntDescriptor.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 UIntDescriptor::UIntDescriptor(const QString& label, SessionItem* item,
                                const variant<QString, Unit>& unit)
diff --git a/GUI/Models/Types/VectorItem.h b/GUI/Models/Types/VectorItem.h
index f44248c23e22828964c902dc5748d56ac9703677..0a9fbfe3ef4ae89651b6a49cf7595cf7a173fea3 100644
--- a/GUI/Models/Types/VectorItem.h
+++ b/GUI/Models/Types/VectorItem.h
@@ -16,7 +16,7 @@
 #define BORNAGAIN_GUI_MODELS_TYPES_VECTORITEM_H
 
 #include "Base/Vector/Vectors3D.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class BA_CORE_API_ VectorItem : public SessionItem {
 private:
diff --git a/GUI/Models/X/DocumentModel.h b/GUI/Models/X/DocumentModel.h
index e867dfb481a83a367200ce4420a000472e3a2e79..d264eddeaa3f780c50a86009a12b810157404be2 100644
--- a/GUI/Models/X/DocumentModel.h
+++ b/GUI/Models/X/DocumentModel.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_X_DOCUMENTMODEL_H
 #define BORNAGAIN_GUI_MODELS_X_DOCUMENTMODEL_H
 
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 class SimulationOptionsItem;
 
diff --git a/GUI/Models/X/ProjectionItems.cpp b/GUI/Models/X/ProjectionItems.cpp
index 8bcad30cc90c6e9408472b836bdc8d6fc1cfa803..7b319a2067dfa0bbc9c5873cce70a683f51de133 100644
--- a/GUI/Models/X/ProjectionItems.cpp
+++ b/GUI/Models/X/ProjectionItems.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/X/ProjectionItems.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 
 ProjectionContainerItem::ProjectionContainerItem() : SessionItem(M_TYPE)
 {
diff --git a/GUI/Models/X/ProjectionItems.h b/GUI/Models/X/ProjectionItems.h
index 4319212a0afe901a13e26c43f48e37a7acc43be7..478f2ebf32aea5c9cb46d1fde63d3efb722ca64f 100644
--- a/GUI/Models/X/ProjectionItems.h
+++ b/GUI/Models/X/ProjectionItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_X_PROJECTIONITEMS_H
 #define BORNAGAIN_GUI_MODELS_X_PROJECTIONITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 //! A container to hold ProjectionItems, intended to store projections of color map on X, Y axes.
 
diff --git a/GUI/Models/X/SelectionDescriptor.h b/GUI/Models/X/SelectionDescriptor.h
index 52de893e8a2ae44682088421d10f0c84923fb7fe..85878fba9bf592f729d1f297ad2a7308b027c366 100644
--- a/GUI/Models/X/SelectionDescriptor.h
+++ b/GUI/Models/X/SelectionDescriptor.h
@@ -15,8 +15,8 @@
 #ifndef BORNAGAIN_GUI_MODELS_X_SELECTIONDESCRIPTOR_H
 #define BORNAGAIN_GUI_MODELS_X_SELECTIONDESCRIPTOR_H
 
-#include "GUI/Models/X5/ComboProperty.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/ComboProperty.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include <QString>
 #include <QStringList>
 #include <functional>
diff --git a/GUI/Models/X/SimulationOptionsItem.cpp b/GUI/Models/X/SimulationOptionsItem.cpp
index 2ee2c472f0eb48f179ffb8a9fd0dfce4c8997a65..76ba73579643287277f4dddad91a90d7ad6d6d25 100644
--- a/GUI/Models/X/SimulationOptionsItem.cpp
+++ b/GUI/Models/X/SimulationOptionsItem.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/X/SimulationOptionsItem.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include <thread>
 
 // !! Attention !! Do not change the following texts, despite they are not matching the
diff --git a/GUI/Models/X/SimulationOptionsItem.h b/GUI/Models/X/SimulationOptionsItem.h
index 2809b50b84eddcf00e865443f399284e777985d7..6fe07d1304d5e1b49144dd8764d0fc3dec20ad59 100644
--- a/GUI/Models/X/SimulationOptionsItem.h
+++ b/GUI/Models/X/SimulationOptionsItem.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_X_SIMULATIONOPTIONSITEM_H
 #define BORNAGAIN_GUI_MODELS_X_SIMULATIONOPTIONSITEM_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include <QMap>
 
 //! The SimulationOptionsItem class holds simulation status (run policy, number of threads,
diff --git a/GUI/Models/X1/ItemWithMaterial.h b/GUI/Models/X1/ItemWithMaterial.h
index 4b97954be14ad098ae314cdd53ba70f2981cc83b..7dbf481cf678ed7199056cb8c0275cc07012fda5 100644
--- a/GUI/Models/X1/ItemWithMaterial.h
+++ b/GUI/Models/X1/ItemWithMaterial.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_X1_ITEMWITHMATERIAL_H
 #define BORNAGAIN_GUI_MODELS_X1_ITEMWITHMATERIAL_H
 
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 
 class MaterialItem;
 
diff --git a/GUI/Models/X1/ItemWithParticles.cpp b/GUI/Models/X1/ItemWithParticles.cpp
index dcf4975b60a172c075232401ef263a7ebdfd2906..d94faebc03bf59e1d144bd2dfab1d0fc5f5e38fa 100644
--- a/GUI/Models/X1/ItemWithParticles.cpp
+++ b/GUI/Models/X1/ItemWithParticles.cpp
@@ -15,8 +15,8 @@
 #include "GUI/Models/X1/ItemWithParticles.h"
 #include "Base/Vector/Transform3D.h"
 #include "GUI/Models/X4/RotationItems.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/X4/TransformationItem.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
 #include "GUI/Models/Types/VectorItem.h"
diff --git a/GUI/Models/X1/ItemWithParticles.h b/GUI/Models/X1/ItemWithParticles.h
index 1dbd2b5d82ba687a06e4c417c8b820f94534496e..452bf18694255f83ea536c3a11838a9d4782022f 100644
--- a/GUI/Models/X1/ItemWithParticles.h
+++ b/GUI/Models/X1/ItemWithParticles.h
@@ -17,7 +17,7 @@
 
 #include "Base/Vector/Vectors3D.h"
 #include "GUI/Models/X/SelectionDescriptor.h"
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 
 class RotationItem;
 class TransformationItem;
diff --git a/GUI/Models/X2/ModelMapper.cpp b/GUI/Models/X2/ModelMapper.cpp
index 61cd4bfa6b613dfb7e4a377a4e735a9a873be602..f59763f8ab6a69225d43a8b0ec19857c0838b553 100644
--- a/GUI/Models/X2/ModelMapper.cpp
+++ b/GUI/Models/X2/ModelMapper.cpp
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 
 ModelMapper::ModelMapper(QObject* parent)
     : QObject(parent), m_active(true), m_model(nullptr), m_item(nullptr)
diff --git a/GUI/Models/X2/ModelUtils.cpp b/GUI/Models/X2/ModelUtils.cpp
index 858e56968db3d14805a79cd47b19bb73e97be63c..6cbd97565465296e4da48dd9d6038739b908aaaa 100644
--- a/GUI/Models/X2/ModelUtils.cpp
+++ b/GUI/Models/X2/ModelUtils.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/X2/ModelUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include <QAbstractItemModel>
 #include <QModelIndex>
 
diff --git a/GUI/Models/X4/RotationItems.h b/GUI/Models/X4/RotationItems.h
index 01a1681e5208ab547f53a0272c6dcef3f290bb72..bb235d5a0251d85e4f91076816a0aba797bed31b 100644
--- a/GUI/Models/X4/RotationItems.h
+++ b/GUI/Models/X4/RotationItems.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_X4_ROTATIONITEMS_H
 #define BORNAGAIN_GUI_MODELS_X4_ROTATIONITEMS_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class IRotation;
 class Transform3D;
diff --git a/GUI/Models/X4/TransformationItem.cpp b/GUI/Models/X4/TransformationItem.cpp
index 4ab247c8b36aab1c56fe643b57120b0ad8757494..2b54b7b5773c128c9571a47ecd25b4f3e60f2147 100644
--- a/GUI/Models/X4/TransformationItem.cpp
+++ b/GUI/Models/X4/TransformationItem.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Models/X4/TransformationItem.h"
-#include "GUI/Models/X5/GroupInfo.h"
+#include "GUI/Models/Group/GroupInfo.h"
 #include "GUI/Models/X4/RotationItems.h"
 
 TransformationItem::TransformationItem() : SessionGraphicsItem(M_TYPE)
diff --git a/GUI/Models/X4/TransformationItem.h b/GUI/Models/X4/TransformationItem.h
index cb370b05430a44d9807d348841b2d78ab8eed84e..7b3848dd6ae30dec39c87259566dedde019958c4 100644
--- a/GUI/Models/X4/TransformationItem.h
+++ b/GUI/Models/X4/TransformationItem.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_X4_TRANSFORMATIONITEM_H
 #define BORNAGAIN_GUI_MODELS_X4_TRANSFORMATIONITEM_H
 
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 
 class RotationItem;
 
diff --git a/GUI/Models/X6/PropertyItem.h b/GUI/Models/X6/PropertyItem.h
index 22d5ba97577e1b901d6ef8b58178b6b0491df7d5..1f7242d25cfa1b0c6dcf1557fca2d7fa30476c5a 100644
--- a/GUI/Models/X6/PropertyItem.h
+++ b/GUI/Models/X6/PropertyItem.h
@@ -15,7 +15,7 @@
 #ifndef BORNAGAIN_GUI_MODELS_X6_PROPERTYITEM_H
 #define BORNAGAIN_GUI_MODELS_X6_PROPERTYITEM_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class BA_CORE_API_ PropertyItem : public SessionItem {
 
diff --git a/GUI/Models/Session/ModelPath.cpp b/GUI/Session/ModelPath.cpp
similarity index 97%
rename from GUI/Models/Session/ModelPath.cpp
rename to GUI/Session/ModelPath.cpp
index e97e36e76658db86ddae5921328eddb345cb5536..82d065d69d339a090b8d09b6dd537229cf83ca15 100644
--- a/GUI/Models/Session/ModelPath.cpp
+++ b/GUI/Session/ModelPath.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/ModelPath.cpp
+//! @file      GUI/Session/ModelPath.cpp
 //! @brief     Implements class ModelPath
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Session/ModelPath.h"
+#include "GUI/Session/ModelPath.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
 #include "GUI/Models/Job/JobItem.h"
 
diff --git a/GUI/Models/Session/ModelPath.h b/GUI/Session/ModelPath.h
similarity index 85%
rename from GUI/Models/Session/ModelPath.h
rename to GUI/Session/ModelPath.h
index 02ac595c1d005c514573d42a089cf797637ca29d..72822d85076b41256523c0d53ff1b055ccc631da 100644
--- a/GUI/Models/Session/ModelPath.h
+++ b/GUI/Session/ModelPath.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/ModelPath.h
+//! @file      GUI/Session/ModelPath.h
 //! @brief     Defines namespace GUI::Model::Path
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_MODELPATH_H
-#define BORNAGAIN_GUI_MODELS_SESSION_MODELPATH_H
+#ifndef BORNAGAIN_GUI_SESSION_MODELPATH_H
+#define BORNAGAIN_GUI_SESSION_MODELPATH_H
 
 #include <memory>
 #include <vector>
@@ -39,4 +39,4 @@ const SessionItem* ancestor(const SessionItem* item, const QString& requiredMode
 
 } // namespace GUI::Model::Path
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_MODELPATH_H
+#endif // BORNAGAIN_GUI_SESSION_MODELPATH_H
diff --git a/GUI/Models/Session/SessionDecorationModel.cpp b/GUI/Session/SessionDecorationModel.cpp
similarity index 95%
rename from GUI/Models/Session/SessionDecorationModel.cpp
rename to GUI/Session/SessionDecorationModel.cpp
index 3d187425ad0ce5dee80381a2076808f722ff4598..0f38f45fe8fe8b0e7392c6903ac088415870785a 100644
--- a/GUI/Models/Session/SessionDecorationModel.cpp
+++ b/GUI/Session/SessionDecorationModel.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionDecorationModel.cpp
+//! @file      GUI/Session/SessionDecorationModel.cpp
 //! @brief     Defines class SessionDecorationModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,9 +12,9 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Session/SessionDecorationModel.h"
+#include "GUI/Session/SessionDecorationModel.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include <QColor>
 #include <QIcon>
 #include <QPixmap>
diff --git a/GUI/Models/Session/SessionDecorationModel.h b/GUI/Session/SessionDecorationModel.h
similarity index 83%
rename from GUI/Models/Session/SessionDecorationModel.h
rename to GUI/Session/SessionDecorationModel.h
index 351704ac595f58823ed2c774ee71e9442df7850d..f311f1f548429f115421bb884ddb2d3bd6e2b53a 100644
--- a/GUI/Models/Session/SessionDecorationModel.h
+++ b/GUI/Session/SessionDecorationModel.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionDecorationModel.h
+//! @file      GUI/Session/SessionDecorationModel.h
 //! @brief     Defines class SessionDecorationModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONDECORATIONMODEL_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONDECORATIONMODEL_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONDECORATIONMODEL_H
+#define BORNAGAIN_GUI_SESSION_SESSIONDECORATIONMODEL_H
 
 #include <QIdentityProxyModel>
 
@@ -40,4 +40,4 @@ private:
     SessionModel* m_model;
 };
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONDECORATIONMODEL_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONDECORATIONMODEL_H
diff --git a/GUI/Models/Session/SessionFlags.h b/GUI/Session/SessionFlags.h
similarity index 87%
rename from GUI/Models/Session/SessionFlags.h
rename to GUI/Session/SessionFlags.h
index 99ffe8a2aae75c51b2cd702085254519fe83b7f1..07fd023e54897bc3d6347ca07a8dadf9cbfcb146 100644
--- a/GUI/Models/Session/SessionFlags.h
+++ b/GUI/Session/SessionFlags.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionFlags.h
+//! @file      GUI/Session/SessionFlags.h
 //! @brief     Defines class SessionFlags
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONFLAGS_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONFLAGS_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONFLAGS_H
+#define BORNAGAIN_GUI_SESSION_SESSIONFLAGS_H
 
 #include <qnamespace.h>
 
@@ -47,4 +47,4 @@ Q_DECLARE_OPERATORS_FOR_FLAGS(SessionFlags::ModelColumn)
 Q_DECLARE_OPERATORS_FOR_FLAGS(SessionFlags::ItemDataRole)
 Q_DECLARE_OPERATORS_FOR_FLAGS(SessionFlags::ItemAppearance)
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONFLAGS_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONFLAGS_H
diff --git a/GUI/Models/Session/SessionGraphicsItem.cpp b/GUI/Session/SessionGraphicsItem.cpp
similarity index 92%
rename from GUI/Models/Session/SessionGraphicsItem.cpp
rename to GUI/Session/SessionGraphicsItem.cpp
index 5c3a2a5cb19711c75aecff7a24524f27b5be5462..5e514ae588b4bd2538bf080ef1ebf3b9f633fb16 100644
--- a/GUI/Models/Session/SessionGraphicsItem.cpp
+++ b/GUI/Session/SessionGraphicsItem.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionGraphicsItem.cpp
+//! @file      GUI/Session/SessionGraphicsItem.cpp
 //! @brief     Implements class SessionGraphicsItem
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 
 SessionGraphicsItem::SessionGraphicsItem(const QString& model_type) : SessionItem(model_type)
 {
diff --git a/GUI/Models/Session/SessionGraphicsItem.h b/GUI/Session/SessionGraphicsItem.h
similarity index 78%
rename from GUI/Models/Session/SessionGraphicsItem.h
rename to GUI/Session/SessionGraphicsItem.h
index 1a5350fc2ce6c93a7d4a8a2dd26eefaf271c0473..e8529c1820af5e244eb9c4be49a67cbf3ee6f55e 100644
--- a/GUI/Models/Session/SessionGraphicsItem.h
+++ b/GUI/Session/SessionGraphicsItem.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionGraphicsItem.h
+//! @file      GUI/Session/SessionGraphicsItem.h
 //! @brief     Defines class SessionGraphicsItem
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,10 +12,10 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONGRAPHICSITEM_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONGRAPHICSITEM_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONGRAPHICSITEM_H
+#define BORNAGAIN_GUI_SESSION_SESSIONGRAPHICSITEM_H
 
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 
 class BA_CORE_API_ SessionGraphicsItem : public SessionItem {
 
@@ -36,4 +36,4 @@ protected:
     explicit SessionGraphicsItem(const QString& model_type);
 };
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONGRAPHICSITEM_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONGRAPHICSITEM_H
diff --git a/GUI/Models/Session/SessionItem.cpp b/GUI/Session/SessionItem.cpp
similarity index 97%
rename from GUI/Models/Session/SessionItem.cpp
rename to GUI/Session/SessionItem.cpp
index 61c41b602ce7911d2f995c3e3873625d6d1b7037..461a1ea94c2365dbc8eedd0ca9a2b97b44c77095 100644
--- a/GUI/Models/Session/SessionItem.cpp
+++ b/GUI/Session/SessionItem.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionItem.cpp
+//! @file      GUI/Session/SessionItem.cpp
 //! @brief     Implements class SessionItem
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,14 +12,14 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X5/GroupItem.h"
-#include "GUI/Models/X1/ItemFactory.h"
+#include "GUI/Models/Group/GroupItem.h"
+#include "GUI/Models/Group/ItemFactory.h"
 #include "GUI/Models/Parameter/ParameterTreeItems.h"
 #include "GUI/Models/X6/PropertyItem.h"
-#include "GUI/Models/Session/SessionItemData.h"
-#include "GUI/Models/Session/SessionItemTags.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionItemData.h"
+#include "GUI/Session/SessionItemTags.h"
+#include "GUI/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionModel.h"
 
 //! Constructs new item with given model type. The type must be defined.
 SessionItem::SessionItem(const QString& modelType)
diff --git a/GUI/Models/Session/SessionItem.h b/GUI/Session/SessionItem.h
similarity index 98%
rename from GUI/Models/Session/SessionItem.h
rename to GUI/Session/SessionItem.h
index 5938752ce15bcf9861b292809843895e3a1db2a9..9d7e352d1b6cde363c8383eda68096e229b6d2c4 100644
--- a/GUI/Models/Session/SessionItem.h
+++ b/GUI/Session/SessionItem.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionItem.h
+//! @file      GUI/Session/SessionItem.h
 //! @brief     Defines class SessionItem
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEM_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEM_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONITEM_H
+#define BORNAGAIN_GUI_SESSION_SESSIONITEM_H
 
 #include "Base/Utils/Assert.h"
 #include "Fit/Param/RealLimits.h"
@@ -423,4 +423,4 @@ template <typename T> bool SessionItem::hasModelType() const
     return modelType() == T::M_TYPE;
 }
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEM_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONITEM_H
diff --git a/GUI/Models/Session/SessionItemData.cpp b/GUI/Session/SessionItemData.cpp
similarity index 92%
rename from GUI/Models/Session/SessionItemData.cpp
rename to GUI/Session/SessionItemData.cpp
index d808e989c7a4ddd9e03aca558b615f1e17877691..6bd62c84e3a1a3997bbea62344c750362116e1b5 100644
--- a/GUI/Models/Session/SessionItemData.cpp
+++ b/GUI/Session/SessionItemData.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionItemData.cpp
+//! @file      GUI/Session/SessionItemData.cpp
 //! @brief     Implements class SessionItemData
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Session/SessionItemData.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemData.h"
+#include "GUI/Session/SessionItemUtils.h"
 
 SessionItemData::ItemData::ItemData(int r, const QVariant& v) : role(r), data(v) {}
 
diff --git a/GUI/Models/Session/SessionItemData.h b/GUI/Session/SessionItemData.h
similarity index 82%
rename from GUI/Models/Session/SessionItemData.h
rename to GUI/Session/SessionItemData.h
index 7930e29754d37d993f62e3f5c458cba6b6ecf608..1c94af80f366c27e8cd97a6ca231bcb791dc961a 100644
--- a/GUI/Models/Session/SessionItemData.h
+++ b/GUI/Session/SessionItemData.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionItemData.h
+//! @file      GUI/Session/SessionItemData.h
 //! @brief     Defines class SessionItemData
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMDATA_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMDATA_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONITEMDATA_H
+#define BORNAGAIN_GUI_SESSION_SESSIONITEMDATA_H
 
 #include <QVariant>
 #include <QVector>
@@ -40,4 +40,4 @@ private:
     QVector<ItemData> m_values;
 };
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMDATA_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONITEMDATA_H
diff --git a/GUI/Models/Session/SessionItemTags.cpp b/GUI/Session/SessionItemTags.cpp
similarity index 97%
rename from GUI/Models/Session/SessionItemTags.cpp
rename to GUI/Session/SessionItemTags.cpp
index 31a7fdeab2eb5534fc253a4b14a5f09dd447b642..7262630d23fb58bf6377d0b45b992fb3b39b238d 100644
--- a/GUI/Models/Session/SessionItemTags.cpp
+++ b/GUI/Session/SessionItemTags.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionItemTags.cpp
+//! @file      GUI/Session/SessionItemTags.cpp
 //! @brief     Implement class SessionItemTags
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,7 +12,7 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Session/SessionItemTags.h"
+#include "GUI/Session/SessionItemTags.h"
 #include "GUI/utils/Error.h"
 
 //! Register tag with given parameters. Returns true in case of success. Returns
diff --git a/GUI/Models/Session/SessionItemTags.h b/GUI/Session/SessionItemTags.h
similarity index 88%
rename from GUI/Models/Session/SessionItemTags.h
rename to GUI/Session/SessionItemTags.h
index 27e86c40a3dad7313cabc868c104dd36e3b5fd60..a973fda22a344c9f99dbc59bf7b8e37a07fa10c0 100644
--- a/GUI/Models/Session/SessionItemTags.h
+++ b/GUI/Session/SessionItemTags.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionItemTags.h
+//! @file      GUI/Session/SessionItemTags.h
 //! @brief     Defines class SessionItemTags
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMTAGS_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMTAGS_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONITEMTAGS_H
+#define BORNAGAIN_GUI_SESSION_SESSIONITEMTAGS_H
 
 #include <QString>
 #include <QStringList>
@@ -61,4 +61,4 @@ private:
     QVector<TagInfo> m_tags;
 };
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMTAGS_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONITEMTAGS_H
diff --git a/GUI/Models/Session/SessionItemUtils.cpp b/GUI/Session/SessionItemUtils.cpp
similarity index 96%
rename from GUI/Models/Session/SessionItemUtils.cpp
rename to GUI/Session/SessionItemUtils.cpp
index 7705b898326af64f0d95af5f9db7212229eabd72..2af6360fd9af90b1d50397c6b5e630df9c4a5bf7 100644
--- a/GUI/Models/Session/SessionItemUtils.cpp
+++ b/GUI/Session/SessionItemUtils.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionItemUtils.cpp
+//! @file      GUI/Session/SessionItemUtils.cpp
 //! @brief     Implements namespace SessionItemUtils
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,12 +12,12 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "GUI/Models/Sample/MesoCrystalItem.h"
 #include "GUI/Models/Sample/ParticleCompositionItem.h"
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
 #include "GUI/Models/X6/PropertyItem.h"
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 #include <QColor>
 #include <QIcon>
 #include <QPixmap>
diff --git a/GUI/Models/Session/SessionItemUtils.h b/GUI/Session/SessionItemUtils.h
similarity index 89%
rename from GUI/Models/Session/SessionItemUtils.h
rename to GUI/Session/SessionItemUtils.h
index 01e91578bcae0c3f4963c6e434fb110652b31ef8..627bfb0dcf279c97dbff8b45b0eecc2a27cfc1da 100644
--- a/GUI/Models/Session/SessionItemUtils.h
+++ b/GUI/Session/SessionItemUtils.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionItemUtils.h
+//! @file      GUI/Session/SessionItemUtils.h
 //! @brief     Defines namespace GUI::Session::ItemUtils
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMUTILS_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMUTILS_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONITEMUTILS_H
+#define BORNAGAIN_GUI_SESSION_SESSIONITEMUTILS_H
 
 #include "Base/Vector/Vectors3D.h"
 #include <QString>
@@ -56,4 +56,4 @@ bool HasOwnAbundance(const SessionItem* item);
 
 } // namespace GUI::Session::ItemUtils
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONITEMUTILS_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONITEMUTILS_H
diff --git a/GUI/Models/Session/SessionModel.cpp b/GUI/Session/SessionModel.cpp
similarity index 98%
rename from GUI/Models/Session/SessionModel.cpp
rename to GUI/Session/SessionModel.cpp
index 53884db0dcf35d56ac67d07ae7eb4801617d657b..df6d314e449d669f8f63b7275ee7712b890db5de 100644
--- a/GUI/Models/Session/SessionModel.cpp
+++ b/GUI/Session/SessionModel.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionModel.cpp
+//! @file      GUI/Session/SessionModel.cpp
 //! @brief     Implements class SessionModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,11 +12,11 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/X1/ItemFactory.h"
-#include "GUI/Models/Session/SessionItemTags.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Models/Group/ItemFactory.h"
+#include "GUI/Session/SessionItemTags.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "GUI/utils/Helpers.h"
 #include <QFile>
 #include <QMimeData>
diff --git a/GUI/Models/Session/SessionModel.h b/GUI/Session/SessionModel.h
similarity index 95%
rename from GUI/Models/Session/SessionModel.h
rename to GUI/Session/SessionModel.h
index 66c360c81f9a86c0e31d68d87a3987a7ae237c5a..ec3118c0063f8dde490f58ed49ff90096083b43d 100644
--- a/GUI/Models/Session/SessionModel.h
+++ b/GUI/Session/SessionModel.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionModel.h
+//! @file      GUI/Session/SessionModel.h
 //! @brief     Defines class SessionModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,12 +12,12 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONMODEL_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONMODEL_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONMODEL_H
+#define BORNAGAIN_GUI_SESSION_SESSIONMODEL_H
 
-#include "GUI/Models/Session/SessionFlags.h"
-#include "GUI/Models/Session/SessionItem.h"
-#include "GUI/Models/Session/SessionXML.h"
+#include "GUI/Session/SessionFlags.h"
+#include "GUI/Session/SessionItem.h"
+#include "GUI/Session/SessionXML.h"
 #include <QStringList>
 
 //! Base class for a GUI data collection.
@@ -217,4 +217,4 @@ inline void SessionModel::setDraggedItemType(const QString& type)
     m_dragged_item_type = type;
 }
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONMODEL_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONMODEL_H
diff --git a/GUI/Models/Session/SessionXML.cpp b/GUI/Session/SessionXML.cpp
similarity index 98%
rename from GUI/Models/Session/SessionXML.cpp
rename to GUI/Session/SessionXML.cpp
index 67b48ff03413da337fbd6afac96e039c662128a1..682dce12fa7f13d66e0ffb7c1c9a8a9a08070b55 100644
--- a/GUI/Models/Session/SessionXML.cpp
+++ b/GUI/Session/SessionXML.cpp
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionXML.cpp
+//! @file      GUI/Session/SessionXML.cpp
 //! @brief     Implements reader and writer classes for SessionModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,12 +12,12 @@
 //
 //  ************************************************************************************************
 
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Material/MaterialItem.h"
-#include "GUI/Models/Session/SessionItemTags.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionItemTags.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/utils/DeserializationException.h"
 #include "GUI/utils/MessageService.h"
 #include <QtCore/QXmlStreamWriter>
diff --git a/GUI/Models/Session/SessionXML.h b/GUI/Session/SessionXML.h
similarity index 92%
rename from GUI/Models/Session/SessionXML.h
rename to GUI/Session/SessionXML.h
index 5b8aa936f2a2c039956c29c384710e7174e70557..ed772cee48c68b2973fb7dd9c1697ae01b9406ba 100644
--- a/GUI/Models/Session/SessionXML.h
+++ b/GUI/Session/SessionXML.h
@@ -2,7 +2,7 @@
 //
 //  BornAgain: simulate and fit reflection and scattering
 //
-//! @file      GUI/Models/Session/SessionXML.h
+//! @file      GUI/Session/SessionXML.h
 //! @brief     Defines reader and writer classes for SessionModel
 //!
 //! @homepage  http://www.bornagainproject.org
@@ -12,8 +12,8 @@
 //
 //  ************************************************************************************************
 
-#ifndef BORNAGAIN_GUI_MODELS_SESSION_SESSIONXML_H
-#define BORNAGAIN_GUI_MODELS_SESSION_SESSIONXML_H
+#ifndef BORNAGAIN_GUI_SESSION_SESSIONXML_H
+#define BORNAGAIN_GUI_SESSION_SESSIONXML_H
 
 #include <QVariant>
 
@@ -63,4 +63,4 @@ QString readProperty(QXmlStreamReader* reader, SessionItem* item,
 
 } // namespace GUI::Session::XML
 
-#endif // BORNAGAIN_GUI_MODELS_SESSION_SESSIONXML_H
+#endif // BORNAGAIN_GUI_SESSION_SESSIONXML_H
diff --git a/GUI/Views/FitWidgets/ParameterTuningDelegate.cpp b/GUI/Views/FitWidgets/ParameterTuningDelegate.cpp
index 590c605357bba3695c01f5f76471498032a0f262..dfaf990749e44f527970bc26c3f413947e7218ec 100644
--- a/GUI/Views/FitWidgets/ParameterTuningDelegate.cpp
+++ b/GUI/Views/FitWidgets/ParameterTuningDelegate.cpp
@@ -13,11 +13,11 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/FitWidgets/ParameterTuningDelegate.h"
-#include "GUI/Models/Session/ModelPath.h"
+#include "GUI/Session/ModelPath.h"
 #include "GUI/Models/Parameter/ParameterTreeItems.h"
 #include "GUI/Models/Parameter/ParameterTuningModel.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/CommonWidgets/ScientificSpinBox.h"
 #include <QAbstractItemModel>
 #include <QApplication>
diff --git a/GUI/Views/ImportDataWidgets/RealDataMaskWidget.cpp b/GUI/Views/ImportDataWidgets/RealDataMaskWidget.cpp
index e95754927aed84e1db8dcf58513cbe22fcd305b9..35fe116addf75298f1ab05b894fc4193e9956252 100644
--- a/GUI/Views/ImportDataWidgets/RealDataMaskWidget.cpp
+++ b/GUI/Views/ImportDataWidgets/RealDataMaskWidget.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/ImportDataWidgets/RealDataMaskWidget.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/Data/RealDataItem.h"
 #include "GUI/Views/MaskWidgets/MaskEditor.h"
 #include <QAction>
diff --git a/GUI/Views/InstrumentWidgets/DistributionEditor.cpp b/GUI/Views/InstrumentWidgets/DistributionEditor.cpp
index 5e24ef6dc35e623819cae00f205300a568e6b1c7..81a62c1f6c6b0ffaa678e66e37adde5b6ba8b1b7 100644
--- a/GUI/Views/InstrumentWidgets/DistributionEditor.cpp
+++ b/GUI/Views/InstrumentWidgets/DistributionEditor.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/InstrumentWidgets/DistributionEditor.h"
 #include "GUI/Models/Parameter/DistributionItems.h"
 #include "GUI/Models/X1/ItemWithDistribution.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/InstrumentWidgets/DistributionForms.h"
 #include "GUI/Views/InstrumentWidgets/EditDistributionDialog.h"
 #include "GUI/Views/PropertyEditor/GroupInfoBox.h"
diff --git a/GUI/Views/InstrumentWidgets/InclinationAnglesEditor.cpp b/GUI/Views/InstrumentWidgets/InclinationAnglesEditor.cpp
index c6b925195ae5f9adbe78a1cf57659f5ff58588ee..fc49e5a11f3a2227aed803ade8aa1fe11312967a 100644
--- a/GUI/Views/InstrumentWidgets/InclinationAnglesEditor.cpp
+++ b/GUI/Views/InstrumentWidgets/InclinationAnglesEditor.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/InstrumentWidgets/InclinationAnglesEditor.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Data/PointwiseAxisItem.h"
 #include "GUI/Models/Instrument/SpecularBeamInclinationItem.h"
 #include "GUI/Views/InstrumentWidgets/DistributionEditor.h"
diff --git a/GUI/Views/IntensityDataWidgets/IntensityDataCanvas.cpp b/GUI/Views/IntensityDataWidgets/IntensityDataCanvas.cpp
index 341be9580a18d1ab33ff655704f68660ff3b9930..415bc9b59b0e3d5609dc4d08edb0e06481c959e8 100644
--- a/GUI/Views/IntensityDataWidgets/IntensityDataCanvas.cpp
+++ b/GUI/Views/IntensityDataWidgets/IntensityDataCanvas.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/IntensityDataWidgets/IntensityDataCanvas.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
 #include "GUI/Models/Data/RealDataItem.h"
 #include "GUI/CommonWidgets/GUIHelpers.h"
diff --git a/GUI/Views/IntensityDataWidgets/IntensityDataFFTPresenter.cpp b/GUI/Views/IntensityDataWidgets/IntensityDataFFTPresenter.cpp
index 2ccc92249d64ffe7013a3526ac3096af068f2a62..eddd0366c0dd3ebb24f16d6f6048ebf525807070 100644
--- a/GUI/Views/IntensityDataWidgets/IntensityDataFFTPresenter.cpp
+++ b/GUI/Views/IntensityDataWidgets/IntensityDataFFTPresenter.cpp
@@ -16,7 +16,7 @@
 #include "Device/Data/DataUtils.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include <QAction>
 #include <QApplication>
 #include <QWidget>
diff --git a/GUI/Views/JobWidgets/FitComparisonController.cpp b/GUI/Views/JobWidgets/FitComparisonController.cpp
index d9344b10ebd446f5cf0633dd93a41b51b9dd4725..8f4d2974d7f8167fb7b6e95f208bcc637d7629cf 100644
--- a/GUI/Views/JobWidgets/FitComparisonController.cpp
+++ b/GUI/Views/JobWidgets/FitComparisonController.cpp
@@ -18,7 +18,7 @@
 #include "GUI/Models/Data/IntensityDataItem.h"
 #include "GUI/Models/Job/JobItem.h"
 #include "GUI/Models/Data/RealDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Data/SpecularDataItem.h"
 #include "GUI/Views/IntensityDataWidgets/PropertyRepeater.h"
 
diff --git a/GUI/Views/JobWidgets/FitComparisonViewController.cpp b/GUI/Views/JobWidgets/FitComparisonViewController.cpp
index df1cf2c4daae4df0cf793664f98b7e054d4021e1..c4457341e9a7d35fd1cfc9a5a0d6e7b07534f04b 100644
--- a/GUI/Views/JobWidgets/FitComparisonViewController.cpp
+++ b/GUI/Views/JobWidgets/FitComparisonViewController.cpp
@@ -15,13 +15,13 @@
 #include "GUI/Views/JobWidgets/FitComparisonViewController.h"
 #include "Device/Data/DataUtils.h"
 #include "GUI/Models/Data/AxesItems.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Data/Data1DViewItem.h"
 #include "GUI/Models/Data/DataItem.h"
 #include "GUI/Models/Data/DataPropertyContainer.h"
 #include "GUI/Models/Job/JobItem.h"
 #include "GUI/Models/Data/RealDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Data/SpecularDataItem.h"
 #include "GUI/Views/IntensityDataWidgets/PropertyRepeater.h"
 
diff --git a/GUI/Views/JobWidgets/FitComparisonWidget1D.cpp b/GUI/Views/JobWidgets/FitComparisonWidget1D.cpp
index b3b6578ef69f54e33cdd7190e12950f3ad3dd73a..4fe2c0964500515bd1da48eb75a134effb9c195f 100644
--- a/GUI/Views/JobWidgets/FitComparisonWidget1D.cpp
+++ b/GUI/Views/JobWidgets/FitComparisonWidget1D.cpp
@@ -17,7 +17,7 @@
 #include "GUI/Models/Fit/FitSuiteItem.h"
 #include "GUI/Models/Job/JobItem.h"
 #include "GUI/Models/Data/RealDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/IntensityDataWidgets/IntensityDataPropertyWidget.h"
 #include "GUI/Views/IntensityDataWidgets/Plot1D.h"
 #include "GUI/Views/IntensityDataWidgets/PlotStatusLabel.h"
diff --git a/GUI/Views/MaskWidgets/EllipseView.cpp b/GUI/Views/MaskWidgets/EllipseView.cpp
index cd2f51cb5d0bd69a0953620f6508633eb27c927a..c5a1c38b17c9a9f38948987f3f7a65d41151a1cb 100644
--- a/GUI/Views/MaskWidgets/EllipseView.cpp
+++ b/GUI/Views/MaskWidgets/EllipseView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/EllipseView.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include <QGraphicsSceneMouseEvent>
 #include <QPainter>
 
diff --git a/GUI/Views/MaskWidgets/IShape2DView.cpp b/GUI/Views/MaskWidgets/IShape2DView.cpp
index 426f84479e700df67b6ebc7e6270e8c89373a24e..90374fa24cfc9c49ad444f67a8e89dfcab5bd974 100644
--- a/GUI/Views/MaskWidgets/IShape2DView.cpp
+++ b/GUI/Views/MaskWidgets/IShape2DView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/IShape2DView.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Views/MaskWidgets/ISceneAdaptor.h"
 #include <QAction>
 #include <QGraphicsScene>
diff --git a/GUI/Views/MaskWidgets/LineViews.cpp b/GUI/Views/MaskWidgets/LineViews.cpp
index 68cf9ff0ff135e8dc828b0d91b393f968efa7db7..d0526b61584d7cbe8153a97c1e68006c523d7514 100644
--- a/GUI/Views/MaskWidgets/LineViews.cpp
+++ b/GUI/Views/MaskWidgets/LineViews.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/LineViews.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Views/MaskWidgets/ColorMapSceneAdaptor.h"
 #include <QCursor>
 #include <QPainter>
diff --git a/GUI/Views/MaskWidgets/MaskAllView.cpp b/GUI/Views/MaskWidgets/MaskAllView.cpp
index bafa148ea87da5761eb65df21eed230ce4acaecd..e9167f94720a4fa08ea66928852eef26162bce56 100644
--- a/GUI/Views/MaskWidgets/MaskAllView.cpp
+++ b/GUI/Views/MaskWidgets/MaskAllView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/MaskAllView.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Views/MaskWidgets/ColorMapSceneAdaptor.h"
 #include <QBrush>
 #include <QPainter>
diff --git a/GUI/Views/MaskWidgets/MaskContainerView.cpp b/GUI/Views/MaskWidgets/MaskContainerView.cpp
index ce3a0f84a9492900d64ecc8e89b6f140fbaca6bc..33235fba4d7a1dd83bfe2a39ac668478a9bd05b0 100644
--- a/GUI/Views/MaskWidgets/MaskContainerView.cpp
+++ b/GUI/Views/MaskWidgets/MaskContainerView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/MaskContainerView.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/X/ProjectionItems.h"
 #include "GUI/Views/MaskWidgets/ISceneAdaptor.h"
 #include <QBrush>
diff --git a/GUI/Views/MaskWidgets/MaskDrawingContext.cpp b/GUI/Views/MaskWidgets/MaskDrawingContext.cpp
index a91313ee50c0d818b7cb0ca343a352d333b6d60d..0d87b04d53296a8dc43c5766aaadcc9e1bf3ca9f 100644
--- a/GUI/Views/MaskWidgets/MaskDrawingContext.cpp
+++ b/GUI/Views/MaskWidgets/MaskDrawingContext.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/MaskDrawingContext.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 
 MaskDrawingContext::MaskDrawingContext()
     : m_current_activity(MaskEditorFlags::PAN_ZOOM_MODE)
diff --git a/GUI/Views/MaskWidgets/MaskEditor.cpp b/GUI/Views/MaskWidgets/MaskEditor.cpp
index 528ee6049ded680bb2feb48f97e508799cc9bd05..944a680a715eac86c748f8fcd5a332258dde9a7c 100644
--- a/GUI/Views/MaskWidgets/MaskEditor.cpp
+++ b/GUI/Views/MaskWidgets/MaskEditor.cpp
@@ -13,8 +13,8 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/MaskEditor.h"
-#include "GUI/Models/Instrument/MaskItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Data/MaskItems.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/MaskWidgets/MaskEditorActions.h"
 #include "GUI/Views/MaskWidgets/MaskEditorCanvas.h"
 #include "GUI/Views/MaskWidgets/MaskEditorPropertyPanel.h"
diff --git a/GUI/Views/MaskWidgets/MaskEditorActions.cpp b/GUI/Views/MaskWidgets/MaskEditorActions.cpp
index 538bec61cca4540147f0d8a52f7a363b1b2e9834..ebc215905605ffb1fefa9bc8e1a5d64c36c16522 100644
--- a/GUI/Views/MaskWidgets/MaskEditorActions.cpp
+++ b/GUI/Views/MaskWidgets/MaskEditorActions.cpp
@@ -13,8 +13,8 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/MaskEditorActions.h"
-#include "GUI/Models/Instrument/MaskItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Data/MaskItems.h"
+#include "GUI/Session/SessionModel.h"
 #include <QAction>
 #include <QItemSelectionModel>
 #include <QMenu>
diff --git a/GUI/Views/MaskWidgets/MaskEditorCanvas.cpp b/GUI/Views/MaskWidgets/MaskEditorCanvas.cpp
index 069939f056bdc4e2edf0808d03e5ccbc01104e89..9e5c78aa0b6024cb0026a8534eebdf5ac3010b10 100644
--- a/GUI/Views/MaskWidgets/MaskEditorCanvas.cpp
+++ b/GUI/Views/MaskWidgets/MaskEditorCanvas.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/MaskWidgets/MaskEditorCanvas.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Views/IntensityDataWidgets/ColorMap.h"
 #include "GUI/Views/IntensityDataWidgets/PlotStatusLabel.h"
 #include "GUI/Views/IntensityDataWidgets/SavePlotAssistant.h"
diff --git a/GUI/Views/MaskWidgets/MaskEditorPropertyPanel.cpp b/GUI/Views/MaskWidgets/MaskEditorPropertyPanel.cpp
index 18a969ec4d2527a39cbfe078a11c8005d823bf2e..8cac68128a518e97dda7745fbb64e3417cc8d029 100644
--- a/GUI/Views/MaskWidgets/MaskEditorPropertyPanel.cpp
+++ b/GUI/Views/MaskWidgets/MaskEditorPropertyPanel.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/MaskWidgets/MaskEditorPropertyPanel.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/PropertyEditor/ComponentEditor.h"
 
 #include <qAccordion/contentpane.h>
diff --git a/GUI/Views/MaskWidgets/MaskGraphicsScene.cpp b/GUI/Views/MaskWidgets/MaskGraphicsScene.cpp
index 66a5733be1298aa00433050b2c006e2c6bcd3bf7..5278cafc89e2402f3230210df5071563881a656a 100644
--- a/GUI/Views/MaskWidgets/MaskGraphicsScene.cpp
+++ b/GUI/Views/MaskWidgets/MaskGraphicsScene.cpp
@@ -14,11 +14,11 @@
 
 #include "GUI/Views/MaskWidgets/MaskGraphicsScene.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/X5/GroupItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Group/GroupItem.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/X/ProjectionItems.h"
 #include "GUI/Models/X6/PropertyItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/MaskWidgets/ColorMapSceneAdaptor.h"
 #include "GUI/Views/MaskWidgets/MaskGraphicsProxy.h"
 #include "GUI/Views/MaskWidgets/MaskViewFactory.h"
diff --git a/GUI/Views/MaskWidgets/MaskResultsPresenter.cpp b/GUI/Views/MaskWidgets/MaskResultsPresenter.cpp
index 8b7682579ac515dbdaebddc3e01fa13f190b932d..3675e4602712fb3921fc204d26944f99c02c530b 100644
--- a/GUI/Views/MaskWidgets/MaskResultsPresenter.cpp
+++ b/GUI/Views/MaskWidgets/MaskResultsPresenter.cpp
@@ -15,8 +15,8 @@
 #include "GUI/Views/MaskWidgets/MaskResultsPresenter.h"
 #include "Device/Mask/DetectorMask.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Data/MaskItems.h"
+#include "GUI/Session/SessionModel.h"
 #include <QVBoxLayout>
 
 MaskResultsPresenter::MaskResultsPresenter(QWidget* parent)
diff --git a/GUI/Views/MaskWidgets/MaskViewFactory.cpp b/GUI/Views/MaskWidgets/MaskViewFactory.cpp
index d115e2441c1aabd50f3116616f991acfc7f6ba10..7942b78494721fda0353448394c6635809f1a058 100644
--- a/GUI/Views/MaskWidgets/MaskViewFactory.cpp
+++ b/GUI/Views/MaskWidgets/MaskViewFactory.cpp
@@ -14,9 +14,9 @@
 
 #include "GUI/Views/MaskWidgets/MaskViewFactory.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/X/ProjectionItems.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "GUI/Views/MaskWidgets/EllipseView.h"
 #include "GUI/Views/MaskWidgets/LineViews.h"
 #include "GUI/Views/MaskWidgets/MaskAllView.h"
diff --git a/GUI/Views/MaskWidgets/PolygonPointView.cpp b/GUI/Views/MaskWidgets/PolygonPointView.cpp
index 6e13a8c9b752998b6ce7dd0d922e1647f71bab01..5081c7a213a592f1bd9469a43d9b4ceed4883965 100644
--- a/GUI/Views/MaskWidgets/PolygonPointView.cpp
+++ b/GUI/Views/MaskWidgets/PolygonPointView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/PolygonPointView.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include <QGraphicsSceneMouseEvent>
 #include <QPainter>
 
diff --git a/GUI/Views/MaskWidgets/PolygonView.cpp b/GUI/Views/MaskWidgets/PolygonView.cpp
index a0ea01d014df8f45733c1db84d1eebf3f008b893..6748f95e3b9e635b9d58a895055044a549d5adcc 100644
--- a/GUI/Views/MaskWidgets/PolygonView.cpp
+++ b/GUI/Views/MaskWidgets/PolygonView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/PolygonView.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Views/MaskWidgets/PolygonPointView.h"
 #include <QCursor>
 #include <QPainter>
diff --git a/GUI/Views/MaskWidgets/RectangleView.cpp b/GUI/Views/MaskWidgets/RectangleView.cpp
index 021b3248fe7957de619894baa68a2deed01a7e16..85dfb0ba0dfadd67df7a998a6c2622377f78dd6e 100644
--- a/GUI/Views/MaskWidgets/RectangleView.cpp
+++ b/GUI/Views/MaskWidgets/RectangleView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/RectangleView.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include <QGraphicsSceneMouseEvent>
 #include <QPainter>
 
diff --git a/GUI/Views/MaskWidgets/RegionOfInterestView.cpp b/GUI/Views/MaskWidgets/RegionOfInterestView.cpp
index f9032362a0387476f9e145667fe08858fc1fe853..6f597452060294b757a5f17da6e5e2b4343348b0 100644
--- a/GUI/Views/MaskWidgets/RegionOfInterestView.cpp
+++ b/GUI/Views/MaskWidgets/RegionOfInterestView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/MaskWidgets/RegionOfInterestView.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Views/MaskWidgets/ISceneAdaptor.h"
 #include <QPainter>
 
diff --git a/GUI/Views/ProjectionsWidgets/ProjectionsEditor.cpp b/GUI/Views/ProjectionsWidgets/ProjectionsEditor.cpp
index 8e4319d0d56efb8efbc96694d112247eaa384bbd..80f12026679a36069c6eaea85ab348c58e00c78c 100644
--- a/GUI/Views/ProjectionsWidgets/ProjectionsEditor.cpp
+++ b/GUI/Views/ProjectionsWidgets/ProjectionsEditor.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/ProjectionsWidgets/ProjectionsEditor.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/ProjectionsWidgets/ProjectionsEditorActions.h"
 #include "GUI/Views/ProjectionsWidgets/ProjectionsEditorCanvas.h"
 #include "GUI/Views/ProjectionsWidgets/ProjectionsPropertyPanel.h"
diff --git a/GUI/Views/ProjectionsWidgets/ProjectionsEditorActions.cpp b/GUI/Views/ProjectionsWidgets/ProjectionsEditorActions.cpp
index 795864e2c9b9bd8ca5e7f7524bf01cda06585be4..b02bf1a4e7479398d8017e5c833c8e80bf9e0a25 100644
--- a/GUI/Views/ProjectionsWidgets/ProjectionsEditorActions.cpp
+++ b/GUI/Views/ProjectionsWidgets/ProjectionsEditorActions.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/ProjectionsWidgets/ProjectionsEditorActions.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/ProjectionsWidgets/SaveProjectionsAssistant.h"
 #include <QAction>
 #include <QItemSelectionModel>
diff --git a/GUI/Views/ProjectionsWidgets/ProjectionsEditorCanvas.cpp b/GUI/Views/ProjectionsWidgets/ProjectionsEditorCanvas.cpp
index 724a549e5a429e6862fd7e74ca2549d580aa1a9a..f5485d140c15fe6c4f2aac1117d6445ff9eaab92 100644
--- a/GUI/Views/ProjectionsWidgets/ProjectionsEditorCanvas.cpp
+++ b/GUI/Views/ProjectionsWidgets/ProjectionsEditorCanvas.cpp
@@ -14,8 +14,8 @@
 
 #include "GUI/Views/ProjectionsWidgets/ProjectionsEditorCanvas.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Data/MaskItems.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/IntensityDataWidgets/ColorMap.h"
 #include "GUI/Views/IntensityDataWidgets/PlotStatusLabel.h"
 #include "GUI/Views/IntensityDataWidgets/ScientificPlotEvent.h"
diff --git a/GUI/Views/ProjectionsWidgets/ProjectionsPlot.cpp b/GUI/Views/ProjectionsWidgets/ProjectionsPlot.cpp
index 56f04e8c8def27265e80dda1045826eafbd59df8..686d17cc7d6bbb0a4c72040aa34cc2be5bc2daea 100644
--- a/GUI/Views/ProjectionsWidgets/ProjectionsPlot.cpp
+++ b/GUI/Views/ProjectionsWidgets/ProjectionsPlot.cpp
@@ -17,7 +17,7 @@
 #include "Device/Histo/Histogram2D.h"
 #include "GUI/Models/Data/AxesItems.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/X/ProjectionItems.h"
 #include "GUI/Views/IntensityDataWidgets/ColorMapUtils.h"
 #include "GUI/Views/IntensityDataWidgets/plot_constants.h"
diff --git a/GUI/Views/ProjectionsWidgets/ProjectionsWidget.cpp b/GUI/Views/ProjectionsWidgets/ProjectionsWidget.cpp
index 05a14da10e24a9d40ec75b621527a699c437ecf8..ae85053c4251213206b37d4ec9905cddda613fee 100644
--- a/GUI/Views/ProjectionsWidgets/ProjectionsWidget.cpp
+++ b/GUI/Views/ProjectionsWidgets/ProjectionsWidget.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/ProjectionsWidgets/ProjectionsWidget.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Views/ProjectionsWidgets/ProjectionsPlot.h"
 #include <QTabWidget>
 #include <QVBoxLayout>
diff --git a/GUI/Views/ProjectionsWidgets/SaveProjectionsAssistant.cpp b/GUI/Views/ProjectionsWidgets/SaveProjectionsAssistant.cpp
index d9908683d83dbdc5dfeb8d75b29384d60fd366aa..7397cc1611e27badf7fac8eb2246be3e8738cf7e 100644
--- a/GUI/Views/ProjectionsWidgets/SaveProjectionsAssistant.cpp
+++ b/GUI/Views/ProjectionsWidgets/SaveProjectionsAssistant.cpp
@@ -19,7 +19,7 @@
 #include "GUI/Application/Application.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/X/ProjectionItems.h"
 #include "GUI/Project/ProjectUtils.h"
 #include "GUI/Project/projectmanager.h"
diff --git a/GUI/Views/PropertyEditor/ComponentFlatView.cpp b/GUI/Views/PropertyEditor/ComponentFlatView.cpp
index 3a77bedae22783b2af2cbdbd2e790014a7715908..0d8794d93793f6e3bec11f1ae3a4fb0766a4afdc 100644
--- a/GUI/Views/PropertyEditor/ComponentFlatView.cpp
+++ b/GUI/Views/PropertyEditor/ComponentFlatView.cpp
@@ -13,9 +13,9 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/PropertyEditor/ComponentFlatView.h"
-#include "GUI/Models/X3/ComponentUtils.h"
-#include "GUI/Models/X5/GroupItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Proxy/ComponentUtils.h"
+#include "GUI/Models/Group/GroupItem.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/PropertyEditor/PropertyEditorFactory.h"
 #include "GUI/Views/PropertyEditor/PropertyWidgetItem.h"
 #include "GUI/utils/LayoutUtils.h"
diff --git a/GUI/Views/PropertyEditor/ComponentTreeActions.cpp b/GUI/Views/PropertyEditor/ComponentTreeActions.cpp
index a7f759a0ea55b5df7d8d04e0bb57c80fc13633a2..4aeac6e815e7b87eff7fd3950a84bef8da3a036e 100644
--- a/GUI/Views/PropertyEditor/ComponentTreeActions.cpp
+++ b/GUI/Views/PropertyEditor/ComponentTreeActions.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/PropertyEditor/ComponentTreeActions.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include <QAction>
 #include <QMenu>
 
diff --git a/GUI/Views/PropertyEditor/ComponentTreeView.cpp b/GUI/Views/PropertyEditor/ComponentTreeView.cpp
index 70fb32d0dcd9abcea75f934fe0986baacb2be456..daf2bd507bbbf4f812a2647b56be0b252ea91282 100644
--- a/GUI/Views/PropertyEditor/ComponentTreeView.cpp
+++ b/GUI/Views/PropertyEditor/ComponentTreeView.cpp
@@ -13,8 +13,8 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/PropertyEditor/ComponentTreeView.h"
-#include "GUI/Models/X3/ComponentProxyModel.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Proxy/ComponentProxyModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/CommonWidgets/StyleUtils.h"
 #include "GUI/Views/PropertyEditor/ComponentTreeActions.h"
 #include "GUI/Views/SessionModelDelegate.h"
diff --git a/GUI/Views/PropertyEditor/CustomEditors.cpp b/GUI/Views/PropertyEditor/CustomEditors.cpp
index 8680bd04ecc99b6383c3caa60be3ab9e3560c5e5..73e62b9eef3284cc9e922890d298c0710b184750 100644
--- a/GUI/Views/PropertyEditor/CustomEditors.cpp
+++ b/GUI/Views/PropertyEditor/CustomEditors.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/PropertyEditor/CustomEditors.h"
 #include "Base/Utils/Assert.h"
 #include "Fit/Param/RealLimits.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Material/MaterialItemUtils.h"
 #include "GUI/CommonWidgets/ScientificSpinBox.h"
 #include "GUI/Views/MaterialEditor/MaterialEditorDialog.h"
diff --git a/GUI/Views/PropertyEditor/MultiComboPropertyEditor.cpp b/GUI/Views/PropertyEditor/MultiComboPropertyEditor.cpp
index f158e56a6db6443aaa709479ba4624d199906029..d4db8d25456ead94336f615ab754574af015dd80 100644
--- a/GUI/Views/PropertyEditor/MultiComboPropertyEditor.cpp
+++ b/GUI/Views/PropertyEditor/MultiComboPropertyEditor.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/PropertyEditor/MultiComboPropertyEditor.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/utils/CustomEventFilters.h"
 #include <QComboBox>
 #include <QEvent>
diff --git a/GUI/Views/PropertyEditor/PropertyEditorFactory.cpp b/GUI/Views/PropertyEditor/PropertyEditorFactory.cpp
index 1d8861e38ffdc05bc0f6f53c756a75d828d44c51..8665ad7b4e6c36101016aa917e402cf807ab2377 100644
--- a/GUI/Views/PropertyEditor/PropertyEditorFactory.cpp
+++ b/GUI/Views/PropertyEditor/PropertyEditorFactory.cpp
@@ -13,10 +13,10 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/PropertyEditor/PropertyEditorFactory.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Material/MaterialItemUtils.h"
-#include "GUI/Models/Session/SessionFlags.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionFlags.h"
+#include "GUI/Session/SessionItem.h"
 #include "GUI/CommonWidgets/ScientificSpinBox.h"
 #include "GUI/Views/PropertyEditor/MultiComboPropertyEditor.h"
 #include <QLabel>
diff --git a/GUI/Views/PropertyEditor/PropertyWidgetItem.cpp b/GUI/Views/PropertyEditor/PropertyWidgetItem.cpp
index cf716300f544b6823a3de2cffb9dfd379b0d7437..ff6f0f20e124314ddf0fc383ddf439015345645c 100644
--- a/GUI/Views/PropertyEditor/PropertyWidgetItem.cpp
+++ b/GUI/Views/PropertyEditor/PropertyWidgetItem.cpp
@@ -13,8 +13,8 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/PropertyEditor/PropertyWidgetItem.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/PropertyEditor/CustomEditors.h"
 #include "GUI/Views/SessionModelDelegate.h"
 #include <QComboBox>
diff --git a/GUI/Views/RealSpaceWidgets/RealSpaceCanvas.cpp b/GUI/Views/RealSpaceWidgets/RealSpaceCanvas.cpp
index 626fe29d233205f02b958ede5d8b474b46a0e856..794635642aa154f0e1ce2a500edf5876f343c686 100644
--- a/GUI/Views/RealSpaceWidgets/RealSpaceCanvas.cpp
+++ b/GUI/Views/RealSpaceWidgets/RealSpaceCanvas.cpp
@@ -16,7 +16,7 @@
 #include "GUI/Application/Application.h"
 #include "GUI/Models/Parameter/FilterPropertyProxy.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "GUI/InfoWidgets/CautionSign.h"
 #include "GUI/Views/RealSpaceWidgets/RealSpaceBuilder.h"
 #include "GUI/Views/RealSpaceWidgets/RealSpaceModel.h"
diff --git a/GUI/Views/SampleDesigner/ConnectableView.cpp b/GUI/Views/SampleDesigner/ConnectableView.cpp
index b0130b04d81049450b1c29978ec15c7118020317..0aecea42c74febe6d177ee79c89ff230f8780b00 100644
--- a/GUI/Views/SampleDesigner/ConnectableView.cpp
+++ b/GUI/Views/SampleDesigner/ConnectableView.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/SampleDesigner/ConnectableView.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 #include "GUI/CommonWidgets/DesignerHelper.h"
 #include "GUI/CommonWidgets/StyleUtils.h"
 #include "GUI/Views/SampleDesigner/NodeEditorConnection.h"
diff --git a/GUI/Views/SampleDesigner/DesignerScene.cpp b/GUI/Views/SampleDesigner/DesignerScene.cpp
index bfab209ec4274005ee7e0dd9ed5b631151176a9d..371ca509e670cb7bfd4eff29776df6665fe2a143 100644
--- a/GUI/Views/SampleDesigner/DesignerScene.cpp
+++ b/GUI/Views/SampleDesigner/DesignerScene.cpp
@@ -16,7 +16,7 @@
 #include "GUI/Models/Parameter/FilterPropertyProxy.h"
 #include "GUI/Models/X/GUIExamplesFactory.h"
 #include "GUI/Models/Sample/InterferenceItems.h"
-#include "GUI/Models/X1/ItemFactory.h"
+#include "GUI/Models/Group/ItemFactory.h"
 #include "GUI/Models/Sample/MesoCrystalItem.h"
 #include "GUI/Models/Sample/ParticleCompositionItem.h"
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
diff --git a/GUI/Views/SampleDesigner/IView.cpp b/GUI/Views/SampleDesigner/IView.cpp
index fb7865f9fdcfb8d25d8670a0e72a8b4f2b6b4f82..0d327cfa404285a9ad922fe181a66f5b53e229c7 100644
--- a/GUI/Views/SampleDesigner/IView.cpp
+++ b/GUI/Views/SampleDesigner/IView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/SampleDesigner/IView.h"
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 #include <QString>
 
 IView::IView(QGraphicsItem* parent) : QGraphicsObject(parent), m_item(nullptr)
diff --git a/GUI/Views/SampleDesigner/ItemTreeView.cpp b/GUI/Views/SampleDesigner/ItemTreeView.cpp
index 5a58970785cf708ac8097da5ea7f403fb1888849..7fa93cf3333a1b7fed4f754d977a05d9a59fd551 100644
--- a/GUI/Views/SampleDesigner/ItemTreeView.cpp
+++ b/GUI/Views/SampleDesigner/ItemTreeView.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/SampleDesigner/ItemTreeView.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include <QDragMoveEvent>
 #include <QMimeData>
 #include <QtCore/QXmlStreamWriter>
diff --git a/GUI/Views/SampleDesigner/MaterialInplaceForm.cpp b/GUI/Views/SampleDesigner/MaterialInplaceForm.cpp
index 1bc0f9d04a221155cbb39a51ff5ceb83749a5779..de1c9f764d65dbd7333f7b3d9852a7953e83f5af 100644
--- a/GUI/Views/SampleDesigner/MaterialInplaceForm.cpp
+++ b/GUI/Views/SampleDesigner/MaterialInplaceForm.cpp
@@ -18,7 +18,7 @@
 #include "GUI/Models/Material/MaterialItemUtils.h"
 #include "GUI/Models/Material/MaterialModel.h"
 #include "GUI/Models/Material/MaterialModelStore.h"
-#include "GUI/Models/Session/ModelPath.h"
+#include "GUI/Session/ModelPath.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
 #include "GUI/CommonWidgets/DoubleLineEdit.h"
 #include "GUI/CommonWidgets/DoubleSpinBox.h"
diff --git a/GUI/Views/SampleDesigner/MultiLayerView.cpp b/GUI/Views/SampleDesigner/MultiLayerView.cpp
index e4081e011a2b7bec3d3ee747d084199b696b1a72..ca8da18f675feaf4b01e03ef663db61d795f81e8 100644
--- a/GUI/Views/SampleDesigner/MultiLayerView.cpp
+++ b/GUI/Views/SampleDesigner/MultiLayerView.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/SampleDesigner/MultiLayerView.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Models/Session/SessionGraphicsItem.h"
+#include "GUI/Session/SessionGraphicsItem.h"
 #include "GUI/CommonWidgets/DesignerHelper.h"
 #include "GUI/Views/SampleDesigner/DesignerMimeData.h"
 #include "GUI/Views/SampleDesigner/DesignerScene.h"
diff --git a/GUI/Views/SampleDesigner/ParticleCoreShellForm.cpp b/GUI/Views/SampleDesigner/ParticleCoreShellForm.cpp
index b0bd1bb05b5fc90455359e5656f1c9e1de4f8edf..d00c056949b08f1ed00c1ee9cce2fc27509b36a5 100644
--- a/GUI/Views/SampleDesigner/ParticleCoreShellForm.cpp
+++ b/GUI/Views/SampleDesigner/ParticleCoreShellForm.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/SampleDesigner/ParticleCoreShellForm.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
diff --git a/GUI/Views/SampleDesigner/ParticleForm.cpp b/GUI/Views/SampleDesigner/ParticleForm.cpp
index e43d22d9ab60c417f70442e0fccf5c0c5816d138..358109b9b9fb0035de83f771011adc2dbe89530a 100644
--- a/GUI/Views/SampleDesigner/ParticleForm.cpp
+++ b/GUI/Views/SampleDesigner/ParticleForm.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/SampleDesigner/ParticleForm.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/Models/Types/VectorDescriptor.h"
diff --git a/GUI/Views/SampleDesigner/ParticleLayoutView.cpp b/GUI/Views/SampleDesigner/ParticleLayoutView.cpp
index 9f960a5a047f8e175042304e0c5130bd7308bf4f..2f83d388f87059455ed1cf2242850a7a9a149a08 100644
--- a/GUI/Views/SampleDesigner/ParticleLayoutView.cpp
+++ b/GUI/Views/SampleDesigner/ParticleLayoutView.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/SampleDesigner/ParticleLayoutView.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "GUI/CommonWidgets/DesignerHelper.h"
 #include "GUI/Views/SampleDesigner/ParticleView.h"
 
diff --git a/GUI/Views/SampleDesigner/ParticleView.cpp b/GUI/Views/SampleDesigner/ParticleView.cpp
index 6e3f4f6dae7ebd88e5f8273d5e9c49e6d740f25a..372fe248962046c76a1b61c9d02a5cd6600ba727 100644
--- a/GUI/Views/SampleDesigner/ParticleView.cpp
+++ b/GUI/Views/SampleDesigner/ParticleView.cpp
@@ -15,7 +15,7 @@
 #include "GUI/Views/SampleDesigner/ParticleView.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/CommonWidgets/DesignerHelper.h"
 #include "GUI/CommonWidgets/StyleUtils.h"
diff --git a/GUI/Views/SampleDesigner/SamplePropertyWidget.cpp b/GUI/Views/SampleDesigner/SamplePropertyWidget.cpp
index f2ee1592754905889bd40b0abd81b96856754487..c01318f14a37c8d9de2d6c46128ee2c8cbdbc78e 100644
--- a/GUI/Views/SampleDesigner/SamplePropertyWidget.cpp
+++ b/GUI/Views/SampleDesigner/SamplePropertyWidget.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/SampleDesigner/SamplePropertyWidget.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "GUI/Views/PropertyEditor/ComponentEditor.h"
 #include <QItemSelection>
 #include <QModelIndexList>
diff --git a/GUI/Views/SampleDesigner/SampleToolBox.cpp b/GUI/Views/SampleDesigner/SampleToolBox.cpp
index 383169b36701d7f20ea12105d6ec7654dc5b4a4f..60b8ead8cc6143a57c3a66f604ee2f520217eb5e 100644
--- a/GUI/Views/SampleDesigner/SampleToolBox.cpp
+++ b/GUI/Views/SampleDesigner/SampleToolBox.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/SampleDesigner/SampleToolBox.h"
 #include "GUI/Models/X/GUIExamplesFactory.h"
-#include "GUI/Models/X1/ItemCatalog.h"
+#include "GUI/Models/Group/ItemCatalog.h"
 #include "GUI/Models/Sample/LayerItem.h"
 #include "GUI/Models/Sample/MultiLayerItem.h"
 #include "GUI/Models/Sample/ParticleLayoutItem.h"
diff --git a/GUI/Views/SampleDesigner/SampleTreeWidget.cpp b/GUI/Views/SampleDesigner/SampleTreeWidget.cpp
index a30d0ad3694de73de6b38ec9123f1df9499ac0db..b8a606a5375449a69b5852e7d811a3fe406d6921 100644
--- a/GUI/Views/SampleDesigner/SampleTreeWidget.cpp
+++ b/GUI/Views/SampleDesigner/SampleTreeWidget.cpp
@@ -14,7 +14,7 @@
 
 #include "GUI/Views/SampleDesigner/SampleTreeWidget.h"
 #include "GUI/Models/Parameter/FilterPropertyProxy.h"
-#include "GUI/Models/X1/ItemCatalog.h"
+#include "GUI/Models/Group/ItemCatalog.h"
 #include "GUI/Models/Sample/SampleModel.h"
 #include "GUI/Views/SampleDesigner/ItemTreeView.h"
 #include <QAction>
diff --git a/GUI/Views/SessionModelDelegate.cpp b/GUI/Views/SessionModelDelegate.cpp
index e98706a3591ba1f1bf5cd593156c37a9ccf91d16..33f423756a8b2d691b32f3ab44282518979c9be8 100644
--- a/GUI/Views/SessionModelDelegate.cpp
+++ b/GUI/Views/SessionModelDelegate.cpp
@@ -13,7 +13,7 @@
 //  ************************************************************************************************
 
 #include "GUI/Views/SessionModelDelegate.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "GUI/Views/PropertyEditor/CustomEditors.h"
 #include "GUI/Views/PropertyEditor/PropertyEditorFactory.h"
 #include "GUI/utils/CustomEventFilters.h"
diff --git a/GUI/mainwindow/OutputDataIOService.cpp b/GUI/mainwindow/OutputDataIOService.cpp
index 1784bda94cba6a2fc950f7cf8f6b01e19f6cffae..10ba08c5718e2f764a94b3fb4142dc53fbf62550 100644
--- a/GUI/mainwindow/OutputDataIOService.cpp
+++ b/GUI/mainwindow/OutputDataIOService.cpp
@@ -15,7 +15,7 @@
 #include "GUI/mainwindow/OutputDataIOService.h"
 #include "GUI/Models/Data/ApplicationModels.h"
 #include "GUI/Models/Job/JobItem.h"
-#include "GUI/Models/Session/ModelPath.h"
+#include "GUI/Session/ModelPath.h"
 #include "GUI/Models/X/SaveLoadInterface.h"
 #include "GUI/Project/ProjectUtils.h"
 #include "GUI/utils/MessageService.h"
diff --git a/Tests/Unit/GUI/Comparators.cpp b/Tests/Unit/GUI/Comparators.cpp
index 964e493935fc64fc44e603fe1956ee41805f6cbb..993c9ce0e9d8c984d8e28c0be0bd40bcd980f47e 100644
--- a/Tests/Unit/GUI/Comparators.cpp
+++ b/Tests/Unit/GUI/Comparators.cpp
@@ -1,5 +1,5 @@
 #include "Tests/Unit/GUI/Comparators.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include <QMetaType>
 
 bool Comparators::m_is_registered = false;
diff --git a/Tests/Unit/GUI/TestComboProperty.cpp b/Tests/Unit/GUI/TestComboProperty.cpp
index b034ba09d63d6a9f19ee2f9a4012568085496b8c..1612159d4bddad57d3911b9fc589ca23e9ce2434 100644
--- a/Tests/Unit/GUI/TestComboProperty.cpp
+++ b/Tests/Unit/GUI/TestComboProperty.cpp
@@ -1,4 +1,4 @@
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/Comparators.h"
 #include "Tests/Unit/GUI/Utils.h"
diff --git a/Tests/Unit/GUI/TestComponentProxyModel.cpp b/Tests/Unit/GUI/TestComponentProxyModel.cpp
index 34ca9c691cca07cd1580833f8900881e9a0fcc6f..7c67b2bddbb232cc67203db0074803a08466bc17 100644
--- a/Tests/Unit/GUI/TestComponentProxyModel.cpp
+++ b/Tests/Unit/GUI/TestComponentProxyModel.cpp
@@ -1,14 +1,14 @@
-#include "GUI/Models/X5/ComboProperty.h"
-#include "GUI/Models/X3/ComponentProxyModel.h"
-#include "GUI/Models/X3/ComponentProxyStrategy.h"
+#include "GUI/Models/Group/ComboProperty.h"
+#include "GUI/Models/Proxy/ComponentProxyModel.h"
+#include "GUI/Models/Proxy/ComponentProxyStrategy.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Sample/LayerItem.h"
 #include "GUI/Models/X2/ModelUtils.h"
 #include "GUI/Models/Sample/MultiLayerItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/Models/Sample/ParticleLayoutItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/Utils.h"
diff --git a/Tests/Unit/GUI/TestComponentUtils.cpp b/Tests/Unit/GUI/TestComponentUtils.cpp
index 641f1ca1c53bf500827fd539a06e71027f776e8b..96596c07b1709d8d4a72da69337a7d09e93cd893 100644
--- a/Tests/Unit/GUI/TestComponentUtils.cpp
+++ b/Tests/Unit/GUI/TestComponentUtils.cpp
@@ -1,8 +1,8 @@
-#include "GUI/Models/X3/ComponentUtils.h"
+#include "GUI/Models/Proxy/ComponentUtils.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 
diff --git a/Tests/Unit/GUI/TestDataItemViews.cpp b/Tests/Unit/GUI/TestDataItemViews.cpp
index cc594f181e3ac0afd7f6bb65821942c3bfcb7df8..88118f82f5515af4e9690f27a792f52d40e68a72 100644
--- a/Tests/Unit/GUI/TestDataItemViews.cpp
+++ b/Tests/Unit/GUI/TestDataItemViews.cpp
@@ -1,5 +1,5 @@
 #include "GUI/Models/Data/ApplicationModels.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Data/DataItem.h"
 #include "GUI/Models/Data/DataProperties.h"
 #include "GUI/Models/Data/DataPropertyContainer.h"
diff --git a/Tests/Unit/GUI/TestDataItems.cpp b/Tests/Unit/GUI/TestDataItems.cpp
index d2fd756f796432e87b7efeebefd70b80f729961d..527c91dcd70d941009bf3545ff8fde0b633cb62f 100644
--- a/Tests/Unit/GUI/TestDataItems.cpp
+++ b/Tests/Unit/GUI/TestDataItems.cpp
@@ -1,5 +1,5 @@
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Data/SpecularDataItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include <QTest>
diff --git a/Tests/Unit/GUI/TestDetectorItems.cpp b/Tests/Unit/GUI/TestDetectorItems.cpp
index d82d8eaef66e20f046b411f9d55c7f6a1cdd538c..1b2cee3424c10a5fe00e7efa1abd23b7e4a262c3 100644
--- a/Tests/Unit/GUI/TestDetectorItems.cpp
+++ b/Tests/Unit/GUI/TestDetectorItems.cpp
@@ -2,7 +2,7 @@
 #include "Device/Detector/IDetector2D.h"
 #include "Device/Resolution/ConvolutionDetectorResolution.h"
 #include "Device/Resolution/ResolutionFunction2DGaussian.h"
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
 #include "GUI/Models/Instrument/RectangularDetectorItem.h"
diff --git a/Tests/Unit/GUI/TestGroupItem.cpp b/Tests/Unit/GUI/TestGroupItem.cpp
index 6d779d566c16347c2dd73590faff4fa2f12d4763..9c42f2e7d9c42c66143b6b6213bd5b635edc22d7 100644
--- a/Tests/Unit/GUI/TestGroupItem.cpp
+++ b/Tests/Unit/GUI/TestGroupItem.cpp
@@ -1,10 +1,10 @@
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/Parameter/DistributionItems.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
-#include "GUI/Models/X5/GroupItem.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Models/Group/GroupItem.h"
+#include "GUI/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionModel.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/Utils.h"
 
diff --git a/Tests/Unit/GUI/TestMapperCases.cpp b/Tests/Unit/GUI/TestMapperCases.cpp
index c1e9aff24bad6b36782d41b6e82afe2a9847a3d7..632d4c6d25b4438ca26d28ef953965d26cc326bc 100644
--- a/Tests/Unit/GUI/TestMapperCases.cpp
+++ b/Tests/Unit/GUI/TestMapperCases.cpp
@@ -1,4 +1,4 @@
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/X/DocumentModel.h"
 #include "GUI/Models/Sample/LayerItem.h"
 #include "GUI/Models/Sample/MultiLayerItem.h"
@@ -6,7 +6,7 @@
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/Models/Sample/ParticleLayoutItem.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "GUI/Models/X/SimulationOptionsItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include <QtTest>
diff --git a/Tests/Unit/GUI/TestMapperForItem.cpp b/Tests/Unit/GUI/TestMapperForItem.cpp
index caff7a125d80aed063d1c4200d2c19e4e8fa3a3c..b55d2dfd059743dc90bf60cf655e94990995c0e3 100644
--- a/Tests/Unit/GUI/TestMapperForItem.cpp
+++ b/Tests/Unit/GUI/TestMapperForItem.cpp
@@ -1,10 +1,10 @@
 #include "GUI/Models/Types/DoubleDescriptor.h"
 #include "GUI/Models/Sample/LayerItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/Sample/MultiLayerItem.h"
 #include "GUI/Models/X/ProjectionItems.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include <memory>
 
diff --git a/Tests/Unit/GUI/TestModelUtils.cpp b/Tests/Unit/GUI/TestModelUtils.cpp
index 77a329bea1dfe838585e62cdb84db8ef65d64767..f832759fe26754ae4e1a7e23891bd7d6afd583a7 100644
--- a/Tests/Unit/GUI/TestModelUtils.cpp
+++ b/Tests/Unit/GUI/TestModelUtils.cpp
@@ -1,7 +1,7 @@
 #include "GUI/Models/Sample/LayerItem.h"
 #include "GUI/Models/X2/ModelUtils.h"
 #include "GUI/Models/Sample/MultiLayerItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include <QVector>
diff --git a/Tests/Unit/GUI/TestParticleCoreShell.cpp b/Tests/Unit/GUI/TestParticleCoreShell.cpp
index ed836e2f953f2c808bc8b8f844a111726ae27b0c..9e2f2e8054c71d2f3dc8696090b19e5aee186f58 100644
--- a/Tests/Unit/GUI/TestParticleCoreShell.cpp
+++ b/Tests/Unit/GUI/TestParticleCoreShell.cpp
@@ -3,7 +3,7 @@
 #include "GUI/Models/Sample/ParticleCoreShellItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include <QtTest>
diff --git a/Tests/Unit/GUI/TestParticleItem.cpp b/Tests/Unit/GUI/TestParticleItem.cpp
index f2b614d40a77f2d43a63f8bdc70b6805174410ea..a5dc028df8637bb18c90f71ffa8ffaee168bab84 100644
--- a/Tests/Unit/GUI/TestParticleItem.cpp
+++ b/Tests/Unit/GUI/TestParticleItem.cpp
@@ -1,9 +1,9 @@
 #include "GUI/Models/Types/DoubleDescriptor.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Sample/ParticleCompositionItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "Tests/GTestWrapper/google_test.h"
 
 using namespace GUI::Session::ItemUtils;
diff --git a/Tests/Unit/GUI/TestParticleLayoutItem.h b/Tests/Unit/GUI/TestParticleLayoutItem.h
index 3c054612328fc8507b3290e96fd5fd8c921fd58b..91bf5be6d2c29f3867d9c4f6d469a2685e7a3d3d 100644
--- a/Tests/Unit/GUI/TestParticleLayoutItem.h
+++ b/Tests/Unit/GUI/TestParticleLayoutItem.h
@@ -6,7 +6,7 @@
 #include "GUI/Models/Sample/Lattice2DItems.h"
 #include "GUI/Models/Sample/ParticleLayoutItem.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionItemUtils.h"
 #include "Tests/Unit/utilities/google_test.h"
 
 class TestParticleLayoutItem : public ::testing::Test {
diff --git a/Tests/Unit/GUI/TestPropertyRepeater.cpp b/Tests/Unit/GUI/TestPropertyRepeater.cpp
index 5c47dc375469fce51508a7631852d54df5d2367a..8b30af4284d73ccec7d99dd7fdfca01bf7a132a5 100644
--- a/Tests/Unit/GUI/TestPropertyRepeater.cpp
+++ b/Tests/Unit/GUI/TestPropertyRepeater.cpp
@@ -1,6 +1,6 @@
 #include "GUI/Models/Data/AxesItems.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Views/IntensityDataWidgets/PropertyRepeater.h"
 #include "Tests/GTestWrapper/google_test.h"
 
diff --git a/Tests/Unit/GUI/TestProxyModelStrategy.cpp b/Tests/Unit/GUI/TestProxyModelStrategy.cpp
index ebbf12c2c6078f9df2cd1ce0963adb55f0b086df..1d335b85de1e59b346468990938a456720bdbdb4 100644
--- a/Tests/Unit/GUI/TestProxyModelStrategy.cpp
+++ b/Tests/Unit/GUI/TestProxyModelStrategy.cpp
@@ -1,11 +1,11 @@
-#include "GUI/Models/X3/ComponentProxyModel.h"
-#include "GUI/Models/X3/ComponentProxyStrategy.h"
+#include "GUI/Models/Proxy/ComponentProxyModel.h"
+#include "GUI/Models/Proxy/ComponentProxyStrategy.h"
 #include "GUI/Models/Sample/FormFactorItems.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/X2/ModelUtils.h"
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/Models/X6/PropertyItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 
diff --git a/Tests/Unit/GUI/TestSavingSpecularData.cpp b/Tests/Unit/GUI/TestSavingSpecularData.cpp
index 0ba5bc8a2c54c70eaf68c0ce6ffb94e7a5a72993..6bbd2866c8b2ad9d8405009c178b500db4d1e0c6 100644
--- a/Tests/Unit/GUI/TestSavingSpecularData.cpp
+++ b/Tests/Unit/GUI/TestSavingSpecularData.cpp
@@ -3,7 +3,7 @@
 #include "GUI/Models/Data/ApplicationModels.h"
 #include "GUI/Models/Data/DataItem.h"
 #include "GUI/utils/Error.h"
-#include "GUI/Models/X5/GroupItem.h"
+#include "GUI/Models/Group/GroupItem.h"
 #include "GUI/Models/Instrument/InstrumentItems.h"
 #include "GUI/Models/Instrument/InstrumentModel.h"
 #include "GUI/Models/Data/IntensityDataItem.h"
diff --git a/Tests/Unit/GUI/TestSessionItem.cpp b/Tests/Unit/GUI/TestSessionItem.cpp
index 9f1fb0ff350e4a801fe889d0ac75ca22ba607105..41eb455147946f8329153115ae20fbebd1f5bf50 100644
--- a/Tests/Unit/GUI/TestSessionItem.cpp
+++ b/Tests/Unit/GUI/TestSessionItem.cpp
@@ -1,4 +1,4 @@
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "Tests/GTestWrapper/google_test.h"
 
 #define EXPECT_ASSERT_TRIGGERED(condition) EXPECT_THROW((condition), std::runtime_error)
diff --git a/Tests/Unit/GUI/TestSessionItemController.cpp b/Tests/Unit/GUI/TestSessionItemController.cpp
index 64ec5419d473d7a044c153d43936aa2f0fd5b7a5..84d589b667a7dce93ee126a9a04b2a157b1c96d7 100644
--- a/Tests/Unit/GUI/TestSessionItemController.cpp
+++ b/Tests/Unit/GUI/TestSessionItemController.cpp
@@ -1,5 +1,5 @@
 #include "GUI/Models/Data/AxesItems.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/CommonWidgets/SessionItemController.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include "Tests/Unit/GUI/TestSessionItemControllerHelper.h"
diff --git a/Tests/Unit/GUI/TestSessionItemControllerHelper.cpp b/Tests/Unit/GUI/TestSessionItemControllerHelper.cpp
index 06ef0dd2be7d7158b81531ac854a6739a8b8100d..ee84216c1ad80677971dfb8351be1306b6e6d355 100644
--- a/Tests/Unit/GUI/TestSessionItemControllerHelper.cpp
+++ b/Tests/Unit/GUI/TestSessionItemControllerHelper.cpp
@@ -1,5 +1,5 @@
 #include "Tests/Unit/GUI/TestSessionItemControllerHelper.h"
-#include "GUI/Models/Session/SessionItem.h"
+#include "GUI/Session/SessionItem.h"
 #include "GUI/CommonWidgets/SessionItemController.h"
 
 TestListener::TestListener()
diff --git a/Tests/Unit/GUI/TestSessionItemData.cpp b/Tests/Unit/GUI/TestSessionItemData.cpp
index 86a8e38eaa01b19de21fc25efd39ebb100e15c7c..722c6f7c16afe4015278ccf42d32a909b54982b8 100644
--- a/Tests/Unit/GUI/TestSessionItemData.cpp
+++ b/Tests/Unit/GUI/TestSessionItemData.cpp
@@ -1,5 +1,5 @@
-#include "GUI/Models/Session/SessionFlags.h"
-#include "GUI/Models/Session/SessionItemData.h"
+#include "GUI/Session/SessionFlags.h"
+#include "GUI/Session/SessionItemData.h"
 #include "Tests/GTestWrapper/google_test.h"
 
 class TestSessionItemData : public ::testing::Test {
diff --git a/Tests/Unit/GUI/TestSessionItemTags.cpp b/Tests/Unit/GUI/TestSessionItemTags.cpp
index 3245e528b197feaaf19c0b2a306a5b72d3995d14..367519971b8622a1a4912711774c6249ad25fad7 100644
--- a/Tests/Unit/GUI/TestSessionItemTags.cpp
+++ b/Tests/Unit/GUI/TestSessionItemTags.cpp
@@ -1,7 +1,7 @@
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Sample/LayerItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
-#include "GUI/Models/Session/SessionItemTags.h"
+#include "GUI/Session/SessionItemTags.h"
 #include "Tests/GTestWrapper/google_test.h"
 
 class TestSessionItemTags : public ::testing::Test {
diff --git a/Tests/Unit/GUI/TestSessionItemUtils.cpp b/Tests/Unit/GUI/TestSessionItemUtils.cpp
index e05e428c78a91dd23e3f6f7a2753c0e7afca8248..e379063da26ecbdc9028efe98c6f56342455a225 100644
--- a/Tests/Unit/GUI/TestSessionItemUtils.cpp
+++ b/Tests/Unit/GUI/TestSessionItemUtils.cpp
@@ -1,7 +1,7 @@
-#include "GUI/Models/X5/ComboProperty.h"
+#include "GUI/Models/Group/ComboProperty.h"
 #include "GUI/Models/X6/PropertyItem.h"
-#include "GUI/Models/Session/SessionItemUtils.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionItemUtils.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 
diff --git a/Tests/Unit/GUI/TestSessionModel.cpp b/Tests/Unit/GUI/TestSessionModel.cpp
index e77a63d0bf1eed8b467b62aaa97df71e8379ef67..21a268651b4b2f1426ee49701ae6c2a4e11ec8ef 100644
--- a/Tests/Unit/GUI/TestSessionModel.cpp
+++ b/Tests/Unit/GUI/TestSessionModel.cpp
@@ -3,12 +3,12 @@
 #include "GUI/Models/Job/JobItem.h"
 #include "GUI/Models/Job/JobModel.h"
 #include "GUI/Models/Sample/LayerItem.h"
-#include "GUI/Models/Instrument/MaskItems.h"
+#include "GUI/Models/Data/MaskItems.h"
 #include "GUI/Models/Material/MaterialModel.h"
 #include "GUI/Models/Sample/MultiLayerItem.h"
 #include "GUI/Models/X6/PropertyItem.h"
 #include "GUI/Models/Sample/SampleModel.h"
-#include "GUI/Models/Session/SessionItemTags.h"
+#include "GUI/Session/SessionItemTags.h"
 #include "GUI/Models/Types/VectorItem.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include <QSignalSpy>
diff --git a/Tests/Unit/GUI/TestSessionXML.cpp b/Tests/Unit/GUI/TestSessionXML.cpp
index 21010365a6e68f56eeb46dbf48b9e7684bbf4102..e837acdef6e9e2602781c2d03b5f6409614bfa2c 100644
--- a/Tests/Unit/GUI/TestSessionXML.cpp
+++ b/Tests/Unit/GUI/TestSessionXML.cpp
@@ -3,7 +3,7 @@
 #include "GUI/Models/Sample/MultiLayerItem.h"
 #include "GUI/Models/Sample/ParticleItem.h"
 #include "GUI/Models/X6/PropertyItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "Tests/GTestWrapper/google_test.h"
 #include <QXmlStreamReader>
 #include <QXmlStreamWriter>
diff --git a/Tests/Unit/GUI/Utils.cpp b/Tests/Unit/GUI/Utils.cpp
index f3ede4ce777d6d3a6b4a641a29f40cafbce1fdbc..a566f353f6d558b2c5fef252284637235c210601 100644
--- a/Tests/Unit/GUI/Utils.cpp
+++ b/Tests/Unit/GUI/Utils.cpp
@@ -18,7 +18,7 @@
 #include "Device/Histo/IntensityDataIOFactory.h"
 #include "GUI/utils/Error.h"
 #include "GUI/Models/Data/RealDataItem.h"
-#include "GUI/Models/Session/SessionModel.h"
+#include "GUI/Session/SessionModel.h"
 #include "GUI/Project/ProjectUtils.h"
 #include <QDir>
 
diff --git a/Tests/Unit/GUI/Utils.h b/Tests/Unit/GUI/Utils.h
index e5f153eb21d515e1b1581a05ac81c7af61dfc6b3..da025f28da3de7e26ec954dab1444b8f2b54fb37 100644
--- a/Tests/Unit/GUI/Utils.h
+++ b/Tests/Unit/GUI/Utils.h
@@ -17,7 +17,7 @@
 #define BORNAGAIN_TESTS_UNIT_GUI_UTILS_H
 
 #include "GUI/Models/X6/PropertyItem.h"
-#include "GUI/Models/Session/SessionXML.h"
+#include "GUI/Session/SessionXML.h"
 #include <QString>
 #include <QXmlStreamWriter>