diff --git a/Framework/LiveData/src/ISIS/ISISHistoDataListener.cpp b/Framework/LiveData/src/ISIS/ISISHistoDataListener.cpp
index ffc2dbeed39cb8304b6512b8241d983850e86096..60c15b7d24aeca16acf5e2c2f787363005583d08 100644
--- a/Framework/LiveData/src/ISIS/ISISHistoDataListener.cpp
+++ b/Framework/LiveData/src/ISIS/ISISHistoDataListener.cpp
@@ -5,6 +5,7 @@
 #include "MantidAPI/Axis.h"
 #include "MantidAPI/LiveListenerFactory.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/SpectrumDetectorMapping.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidAPI/WorkspaceGroup.h"
diff --git a/Framework/LiveData/src/TOPAZLiveEventDataListener.cpp b/Framework/LiveData/src/TOPAZLiveEventDataListener.cpp
index c4ac046f4f1cc96ce3011386aa45d388b17dfce2..a2bcc57a8dbea0ebd980cf3989ad8200fbe346f2 100644
--- a/Framework/LiveData/src/TOPAZLiveEventDataListener.cpp
+++ b/Framework/LiveData/src/TOPAZLiveEventDataListener.cpp
@@ -1,37 +1,20 @@
 #include "MantidAPI/AlgorithmManager.h"
 #include "MantidAPI/Axis.h"
 #include "MantidAPI/LiveListenerFactory.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidGeometry/Instrument.h"
 #include "MantidLiveData/TOPAZLiveEventDataListener.h"
 #include "MantidLiveData/Exception.h"
-//#include "MantidDataObjects/Events.h"
-//#include "MantidKernel/DateAndTime.h"
-//#include "MantidKernel/Strings.h"
 #include "MantidKernel/TimeSeriesProperty.h"
 #include "MantidKernel/UnitFactory.h"
-//#include "MantidKernel/WriteLock.h"
 #include "MantidDataObjects/EventWorkspace.h"
 
 #include <Poco/Net/NetException.h>
 #include <Poco/Net/StreamSocket.h>
 #include <Poco/Net/DatagramSocket.h>
 #include <Poco/Net/SocketAddress.h>
-//#include <Poco/Net/SocketStream.h>
-//#include <Poco/Timestamp.h>
 
-// Includes for parsing the XML device descriptions
-//#include "Poco/DOM/DOMParser.h"
-//#include "Poco/DOM/Document.h"
-//#include "Poco/DOM/AutoPtr.h"
-//#include "Poco/DOM/NodeList.h"
-//#include "Poco/DOM/NamedNodeMap.h"
-
-//#include <Poco/Thread.h>
-//#include <Poco/Runnable.h>
-
-//#include <time.h>
-//#include <sstream> // for ostringstream
 #include <string>
 #include <fstream>
 #include <exception>
diff --git a/Framework/MDAlgorithms/inc/MantidMDAlgorithms/LoadSQW2.h b/Framework/MDAlgorithms/inc/MantidMDAlgorithms/LoadSQW2.h
index 9af42f7453b250176ad61fcb96a65d54ba6f3c77..34504cb5c9bb5f66cb9eac0ba7ab99989dd51287 100644
--- a/Framework/MDAlgorithms/inc/MantidMDAlgorithms/LoadSQW2.h
+++ b/Framework/MDAlgorithms/inc/MantidMDAlgorithms/LoadSQW2.h
@@ -14,6 +14,9 @@ namespace Mantid {
 namespace API {
 class ExperimentInfo;
 }
+namespace Geometry {
+class OrientedLattice;
+}
 
 namespace MDAlgorithms {
 
diff --git a/Framework/MDAlgorithms/inc/MantidMDAlgorithms/MDWSDescription.h b/Framework/MDAlgorithms/inc/MantidMDAlgorithms/MDWSDescription.h
index 1ed3503f97097c58cc817031d2ad6097cb292023..2b17821ecadc3bf03afe0bf9c06f5848cbfb8c41 100644
--- a/Framework/MDAlgorithms/inc/MantidMDAlgorithms/MDWSDescription.h
+++ b/Framework/MDAlgorithms/inc/MantidMDAlgorithms/MDWSDescription.h
@@ -104,7 +104,7 @@ public: // for the time being
   std::string getWSName() const { return m_InWS->name(); }
   bool isPowder() const;
   bool isQ3DMode() const;
-  bool hasLattice() const { return m_InWS->sample().hasOrientedLattice(); }
+  bool hasLattice() const;
 
   boost::shared_ptr<Geometry::OrientedLattice> getLattice() const {
     return getOrientedLattice(m_InWS);
diff --git a/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Quantification/CachedExperimentInfo.h b/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Quantification/CachedExperimentInfo.h
index 22d7b317caca9200217f48f58c4e69206f283b47..c3ffe130d930b885fd39866a3fcaf6e66d8d97c2 100644
--- a/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Quantification/CachedExperimentInfo.h
+++ b/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Quantification/CachedExperimentInfo.h
@@ -28,6 +28,9 @@
 #include "MantidKernel/Matrix.h"
 
 namespace Mantid {
+namespace Geometry {
+class Goniometer;
+}
 namespace MDAlgorithms {
 /**
  * Defines information about a neutron event within a given experiment
diff --git a/Framework/MDAlgorithms/src/BinaryOperationMD.cpp b/Framework/MDAlgorithms/src/BinaryOperationMD.cpp
index a8049dd2af752e9ac3e30e098daf54432cb916fc..6ac64a6c831c4a6f30eac07a2cfc9bf155d10e99 100644
--- a/Framework/MDAlgorithms/src/BinaryOperationMD.cpp
+++ b/Framework/MDAlgorithms/src/BinaryOperationMD.cpp
@@ -6,6 +6,7 @@
 #include "MantidDataObjects/MDEventFactory.h"
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceProperty.h"
 #include "MantidGeometry/MDGeometry/IMDDimension.h"
 
@@ -18,7 +19,6 @@ using Mantid::Geometry::IMDDimension_const_sptr;
 namespace Mantid {
 namespace MDAlgorithms {
 
-//----------------------------------------------------------------------------------------------
 /// Algorithm's name for identification. @see Algorithm::name
 const std::string BinaryOperationMD::name() const {
   return "BinaryOperationMD";
@@ -32,7 +32,6 @@ const std::string BinaryOperationMD::category() const {
   return "MDAlgorithms\\MDArithmetic";
 }
 
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void BinaryOperationMD::init() {
@@ -55,7 +54,6 @@ void BinaryOperationMD::init() {
 /// Optional extra properties
 void BinaryOperationMD::initExtraProperties() {}
 
-//----------------------------------------------------------------------------------------------
 /** Execute the algorithm.
  */
 void BinaryOperationMD::exec() {
diff --git a/Framework/MDAlgorithms/src/CalculateCoverageDGS.cpp b/Framework/MDAlgorithms/src/CalculateCoverageDGS.cpp
index ff43cb9dddc1061b6898fb4763adc091273ec67a..1db1765f7956e41ea08f09473b0be3f9fb2de2a0 100644
--- a/Framework/MDAlgorithms/src/CalculateCoverageDGS.cpp
+++ b/Framework/MDAlgorithms/src/CalculateCoverageDGS.cpp
@@ -1,5 +1,7 @@
 #include "MantidMDAlgorithms/CalculateCoverageDGS.h"
 #include "MantidAPI/InstrumentValidator.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidDataObjects/MDHistoWorkspace.h"
 #include "MantidKernel/ArrayProperty.h"
 #include "MantidKernel/ArrayLengthValidator.h"
@@ -29,7 +31,6 @@ bool compareMomentum(const Mantid::Kernel::VMD &v1,
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(CalculateCoverageDGS)
 
-//----------------------------------------------------------------------------------------------
 /** Constructor
  */
 CalculateCoverageDGS::CalculateCoverageDGS()
@@ -40,8 +41,6 @@ CalculateCoverageDGS::CalculateCoverageDGS()
       m_eX(), m_hIdx(-1), m_kIdx(-1), m_lIdx(-1), m_eIdx(-1), m_rubw(3, 3),
       m_normWS() {}
 
-//----------------------------------------------------------------------------------------------
-
 /// Algorithms name for identification. @see Algorithm::name
 const std::string CalculateCoverageDGS::name() const {
   return "CalculateCoverageDGS";
@@ -92,7 +91,6 @@ void CalculateCoverageDGS::cacheDimensionXValues() {
   }
 }
 
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void CalculateCoverageDGS::init() {
@@ -152,7 +150,6 @@ void CalculateCoverageDGS::init() {
                   "A name for the output data MDHistoWorkspace.");
 }
 
-//----------------------------------------------------------------------------------------------
 /** Execute the algorithm.
  */
 void CalculateCoverageDGS::exec() {
diff --git a/Framework/MDAlgorithms/src/ConvToMDBase.cpp b/Framework/MDAlgorithms/src/ConvToMDBase.cpp
index e63eab348d1678b6ed3c266f43c34e1d32c08c21..e9a540109e43076129c6fdbcc18d2c81bebeb8d7 100644
--- a/Framework/MDAlgorithms/src/ConvToMDBase.cpp
+++ b/Framework/MDAlgorithms/src/ConvToMDBase.cpp
@@ -1,5 +1,6 @@
 #include "MantidMDAlgorithms/ConvToMDBase.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 
 namespace Mantid {
 namespace MDAlgorithms {
diff --git a/Framework/MDAlgorithms/src/ConvertCWPDMDToSpectra.cpp b/Framework/MDAlgorithms/src/ConvertCWPDMDToSpectra.cpp
index 372ed733a0469eaec1e4e768d16b2fe8e9f1bdfb..f416050888412bd97f73d1a862ab07a3c56fedba 100644
--- a/Framework/MDAlgorithms/src/ConvertCWPDMDToSpectra.cpp
+++ b/Framework/MDAlgorithms/src/ConvertCWPDMDToSpectra.cpp
@@ -5,6 +5,7 @@
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/IMDIterator.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidAPI/WorkspaceProperty.h"
 #include "MantidGeometry/Instrument.h"
@@ -22,7 +23,6 @@ DECLARE_ALGORITHM(ConvertCWPDMDToSpectra)
 
 const double BIGNUMBER = 1.0E100;
 
-//----------------------------------------------------------------------------------------------
 void ConvertCWPDMDToSpectra::init() {
 
   declareProperty(make_unique<WorkspaceProperty<IMDEventWorkspace>>(
@@ -76,7 +76,6 @@ void ConvertCWPDMDToSpectra::init() {
                   "is applied to the case that the bin size is small. ");
 }
 
-//----------------------------------------------------------------------------------------------
 void ConvertCWPDMDToSpectra::exec() {
   // Process input workspaces
   // input data workspace
diff --git a/Framework/MDAlgorithms/src/ConvertCWSDExpToMomentum.cpp b/Framework/MDAlgorithms/src/ConvertCWSDExpToMomentum.cpp
index b95b819fa9682b9f1a670482e722f4f57fb83e74..a6e05402bd0c9e12fc34093d420a17dd362a947d 100644
--- a/Framework/MDAlgorithms/src/ConvertCWSDExpToMomentum.cpp
+++ b/Framework/MDAlgorithms/src/ConvertCWSDExpToMomentum.cpp
@@ -1,4 +1,5 @@
 #include "MantidMDAlgorithms/ConvertCWSDExpToMomentum.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceProperty.h"
 #include "MantidKernel/ArrayProperty.h"
 #include "MantidGeometry/Instrument.h"
@@ -21,7 +22,6 @@ namespace MDAlgorithms {
 
 DECLARE_ALGORITHM(ConvertCWSDExpToMomentum)
 
-//----------------------------------------------------------------------------------------------
 /** Constructor
  */
 ConvertCWSDExpToMomentum::ConvertCWSDExpToMomentum()
@@ -29,7 +29,6 @@ ConvertCWSDExpToMomentum::ConvertCWSDExpToMomentum()
       m_iMonitorCounts(4), m_iTime(5), m_setQRange(true), m_isBaseName(false),
       m_removeBackground(false) {}
 
-//----------------------------------------------------------------------------------------------
 /** Init to declare property
  */
 void ConvertCWSDExpToMomentum::init() {
diff --git a/Framework/MDAlgorithms/src/ConvertCWSDMDtoHKL.cpp b/Framework/MDAlgorithms/src/ConvertCWSDMDtoHKL.cpp
index 5cd76046dd1c8a537ce3cbb39abb31d290b5ac11..0b4cfb8c09e8d03c85fc907c89b421410b518b94 100644
--- a/Framework/MDAlgorithms/src/ConvertCWSDMDtoHKL.cpp
+++ b/Framework/MDAlgorithms/src/ConvertCWSDMDtoHKL.cpp
@@ -3,6 +3,8 @@
 #include "MantidAPI/WorkspaceProperty.h"
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/IMDIterator.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 
 #include "MantidGeometry/Crystal/IndexingUtils.h"
 #include "MantidGeometry/Crystal/OrientedLattice.h"
@@ -33,7 +35,6 @@ using namespace Mantid::Geometry;
 
 DECLARE_ALGORITHM(ConvertCWSDMDtoHKL)
 
-//----------------------------------------------------------------------------------------------
 /** Init
  */
 void ConvertCWSDMDtoHKL::init() {
@@ -65,7 +66,6 @@ void ConvertCWSDMDtoHKL::init() {
                   "Name of file for HKL.");
 }
 
-//----------------------------------------------------------------------------------------------
 /** Exec
  */
 void ConvertCWSDMDtoHKL::exec() {
diff --git a/Framework/MDAlgorithms/src/ConvertSpiceDataToRealSpace.cpp b/Framework/MDAlgorithms/src/ConvertSpiceDataToRealSpace.cpp
index 49b481e5e8b51ac50249cb5b34be4112587939e9..5bc4e7d654ba3c6e313e8696486bb799bced5d8b 100644
--- a/Framework/MDAlgorithms/src/ConvertSpiceDataToRealSpace.cpp
+++ b/Framework/MDAlgorithms/src/ConvertSpiceDataToRealSpace.cpp
@@ -4,6 +4,7 @@
 #include "MantidAPI/FileProperty.h"
 #include "MantidAPI/IMDIterator.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidDataObjects/MDEventFactory.h"
 #include "MantidDataObjects/MDEventInserter.h"
@@ -32,7 +33,6 @@ using namespace Mantid::DataObjects;
 
 DECLARE_ALGORITHM(ConvertSpiceDataToRealSpace)
 
-//------------------------------------------------------------------------------------------------
 /** Init
  */
 void ConvertSpiceDataToRealSpace::init() {
@@ -90,7 +90,6 @@ void ConvertSpiceDataToRealSpace::init() {
       "Name of a table workspace containing the detectors' efficiency.");
 }
 
-//------------------------------------------------------------------------------------------------
 /** Exec
  */
 void ConvertSpiceDataToRealSpace::exec() {
diff --git a/Framework/MDAlgorithms/src/ConvertToDiffractionMDWorkspace.cpp b/Framework/MDAlgorithms/src/ConvertToDiffractionMDWorkspace.cpp
index c270cce49277dca3d9847e45916eeb4713ef99db..b28b4c769dec1b03b78a47bbcf633d3f052ba111 100644
--- a/Framework/MDAlgorithms/src/ConvertToDiffractionMDWorkspace.cpp
+++ b/Framework/MDAlgorithms/src/ConvertToDiffractionMDWorkspace.cpp
@@ -3,6 +3,8 @@
 #include "MantidAPI/Axis.h"
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/Progress.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidDataObjects/EventWorkspace.h"
 #include "MantidDataObjects/MDEventFactory.h"
@@ -36,7 +38,6 @@ bool DODEBUG = true;
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(ConvertToDiffractionMDWorkspace)
 
-//----------------------------------------------------------------------------------------------
 /** Constructor
  */
 ConvertToDiffractionMDWorkspace::ConvertToDiffractionMDWorkspace()
@@ -49,9 +50,6 @@ ConvertToDiffractionMDWorkspace::ConvertToDiffractionMDWorkspace()
       m_extentsMax(nullptr) // will be allocated in exec using nDims
 {}
 
-//----------------------------------------------------------------------------------------------
-
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void ConvertToDiffractionMDWorkspace::init() {
@@ -126,7 +124,6 @@ void ConvertToDiffractionMDWorkspace::init() {
 /// Our MDLeanEvent dimension
 typedef DataObjects::MDLeanEvent<3> MDE;
 
-//----------------------------------------------------------------------------------------------
 /** Convert one spectrum to DataObjects.
  * Depending on options, it uses the histogram view or the
  * pure event view.
diff --git a/Framework/MDAlgorithms/src/ConvertToMD.cpp b/Framework/MDAlgorithms/src/ConvertToMD.cpp
index 7febafb223d43b062ba961d09e7537e18392a2a7..357b1895c9e41ce8fd54288603d5bef07d82d5ef 100644
--- a/Framework/MDAlgorithms/src/ConvertToMD.cpp
+++ b/Framework/MDAlgorithms/src/ConvertToMD.cpp
@@ -4,6 +4,7 @@
 
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/FileProperty.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/EnabledWhenProperty.h"
 
 #include "MantidKernel/ArrayProperty.h"
diff --git a/Framework/MDAlgorithms/src/ConvertToMDMinMaxGlobal.cpp b/Framework/MDAlgorithms/src/ConvertToMDMinMaxGlobal.cpp
index 4c2eb54b0db3909008aeab29ed840572bca7f2dd..c76c5f6de2b248ceeb90c3308cb0a19a9790765b 100644
--- a/Framework/MDAlgorithms/src/ConvertToMDMinMaxGlobal.cpp
+++ b/Framework/MDAlgorithms/src/ConvertToMDMinMaxGlobal.cpp
@@ -2,6 +2,8 @@
 
 #include "MantidAPI/HistogramValidator.h"
 #include "MantidAPI/InstrumentValidator.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidKernel/ArrayProperty.h"
 #include "MantidKernel/CompositeValidator.h"
@@ -25,7 +27,6 @@ namespace MDAlgorithms {
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(ConvertToMDMinMaxGlobal)
 
-//----------------------------------------------------------------------------------------------
 /// Algorithm's name for identification. @see Algorithm::name
 const std::string ConvertToMDMinMaxGlobal::name() const {
   return "ConvertToMDMinMaxGlobal";
@@ -39,9 +40,6 @@ const std::string ConvertToMDMinMaxGlobal::category() const {
   return "MDAlgorithms\\Creation";
 }
 
-//----------------------------------------------------------------------------------------------
-
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void ConvertToMDMinMaxGlobal::init() {
diff --git a/Framework/MDAlgorithms/src/ConvertToMDParent.cpp b/Framework/MDAlgorithms/src/ConvertToMDParent.cpp
index 8559fbc82f84b8aaf22304ef5e60f08dc402ae08..c1ab2ba739b112a5d9000c176f4e77f6c344a03f 100644
--- a/Framework/MDAlgorithms/src/ConvertToMDParent.cpp
+++ b/Framework/MDAlgorithms/src/ConvertToMDParent.cpp
@@ -2,6 +2,7 @@
 
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/InstrumentValidator.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 
 #include "MantidKernel/ArrayProperty.h"
@@ -24,7 +25,6 @@ const std::string ConvertToMDParent::category() const {
   return "MDAlgorithms\\Creation";
 }
 
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
 */
 void ConvertToMDParent::init() {
diff --git a/Framework/MDAlgorithms/src/ConvertToReflectometryQ.cpp b/Framework/MDAlgorithms/src/ConvertToReflectometryQ.cpp
index a9b88aa06c4839a95f291e2a4db9fcab1d21183f..17ca579dfd540b6d65f53a061651b8ca8c20ead7 100644
--- a/Framework/MDAlgorithms/src/ConvertToReflectometryQ.cpp
+++ b/Framework/MDAlgorithms/src/ConvertToReflectometryQ.cpp
@@ -4,6 +4,7 @@
 #include "MantidAPI/IEventWorkspace.h"
 #include "MantidAPI/ITableWorkspace.h"
 #include "MantidAPI/HistogramValidator.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidAPI/Progress.h"
 
diff --git a/Framework/MDAlgorithms/src/CreateMD.cpp b/Framework/MDAlgorithms/src/CreateMD.cpp
index 784662e78bd12493f888ff389ad6b6d501d2c7a2..a492605d2b14f04ab6c51b32e319152870b9f356 100644
--- a/Framework/MDAlgorithms/src/CreateMD.cpp
+++ b/Framework/MDAlgorithms/src/CreateMD.cpp
@@ -1,6 +1,8 @@
 #include "MantidMDAlgorithms/CreateMD.h"
 #include "MantidKernel/ArrayProperty.h"
 #include "MantidAPI/FileProperty.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidKernel/EnabledWhenProperty.h"
 #include "MantidKernel/ListValidator.h"
 #include "MantidKernel/MandatoryValidator.h"
diff --git a/Framework/MDAlgorithms/src/CutMD.cpp b/Framework/MDAlgorithms/src/CutMD.cpp
index 8ac80336bc7896587d5ffecd17b10722529583d9..114af43693d128fa6abe0b8a74b008c7ec570512 100644
--- a/Framework/MDAlgorithms/src/CutMD.cpp
+++ b/Framework/MDAlgorithms/src/CutMD.cpp
@@ -3,6 +3,8 @@
 #include "MantidAPI/IMDHistoWorkspace.h"
 #include "MantidAPI/ITableWorkspace.h"
 #include "MantidAPI/Projection.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidGeometry/Crystal/OrientedLattice.h"
 #include "MantidKernel/ArrayProperty.h"
 #include "MantidKernel/ListValidator.h"
diff --git a/Framework/MDAlgorithms/src/FindPeaksMD.cpp b/Framework/MDAlgorithms/src/FindPeaksMD.cpp
index 9ebd3fa6bce6d177d86d6109ad883219cffc318a..0cb21c0dc40a92ddd8b887bda93707cd6c6316c2 100644
--- a/Framework/MDAlgorithms/src/FindPeaksMD.cpp
+++ b/Framework/MDAlgorithms/src/FindPeaksMD.cpp
@@ -4,6 +4,7 @@
 #include "MantidDataObjects/MDEventFactory.h"
 #include "MantidDataObjects/MDHistoWorkspace.h"
 #include "MantidKernel/VMD.h"
+#include "MantidAPI/Run.h"
 
 #include <boost/math/special_functions/fpclassify.hpp>
 #include <boost/type_traits/integral_constant.hpp>
diff --git a/Framework/MDAlgorithms/src/GetSpiceDataRawCountsFromMD.cpp b/Framework/MDAlgorithms/src/GetSpiceDataRawCountsFromMD.cpp
index 4970e5af3fc4891016309bb4710755eaa2906831..ddf4bdc9fca8e93ba2abe6f21f428021e7365a67 100644
--- a/Framework/MDAlgorithms/src/GetSpiceDataRawCountsFromMD.cpp
+++ b/Framework/MDAlgorithms/src/GetSpiceDataRawCountsFromMD.cpp
@@ -4,6 +4,7 @@
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/IMDIterator.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidAPI/WorkspaceProperty.h"
 #include "MantidGeometry/Instrument.h"
@@ -17,7 +18,6 @@ using namespace Mantid::Kernel;
 
 DECLARE_ALGORITHM(GetSpiceDataRawCountsFromMD)
 
-//----------------------------------------------------------------------------------------------
 /** Initialization
  * @brief GetSpiceDataRawCountsFromMD::init
  */
@@ -77,7 +77,6 @@ void GetSpiceDataRawCountsFromMD::init() {
                   "be normalized by their monitor counts. ");
 }
 
-//----------------------------------------------------------------------------------------------
 /** Execution body
  * @brief GetSpiceDataRawCountsFromMD::exec
  */
diff --git a/Framework/MDAlgorithms/src/IntegrateEllipsoids.cpp b/Framework/MDAlgorithms/src/IntegrateEllipsoids.cpp
index 9a3a1fb057cec891675f89086ae59fddd2f906cb..d282d058f97c9b80fd30c6bfafa23eac566a1632 100644
--- a/Framework/MDAlgorithms/src/IntegrateEllipsoids.cpp
+++ b/Framework/MDAlgorithms/src/IntegrateEllipsoids.cpp
@@ -2,6 +2,7 @@
 
 #include "MantidAPI/FileProperty.h"
 #include "MantidAPI/InstrumentValidator.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidDataObjects/EventWorkspace.h"
diff --git a/Framework/MDAlgorithms/src/IntegratePeaksCWSD.cpp b/Framework/MDAlgorithms/src/IntegratePeaksCWSD.cpp
index fc9fefebd4a6d3cc857aa98b151a66ecc4a35c87..99fb4f12e50c0f43a8d35a6da9fc92b17b06c92b 100644
--- a/Framework/MDAlgorithms/src/IntegratePeaksCWSD.cpp
+++ b/Framework/MDAlgorithms/src/IntegratePeaksCWSD.cpp
@@ -1,6 +1,7 @@
 #include "MantidMDAlgorithms/IntegratePeaksCWSD.h"
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/IMDIterator.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceProperty.h"
 #include "MantidDataObjects/Peak.h"
 #include "MantidDataObjects/PeaksWorkspace.h"
@@ -21,7 +22,6 @@ using namespace Mantid::Geometry;
 
 const signal_t THRESHOLD_SIGNAL = 0;
 
-//----------------------------------------------------------------------------------------------
 /** Constructor
  */
 IntegratePeaksCWSD::IntegratePeaksCWSD()
@@ -30,7 +30,6 @@ IntegratePeaksCWSD::IntegratePeaksCWSD()
       m_normalizeByTime(false), m_scaleFactor(0), m_maskDets(false),
       m_haveInputPeakWS(false) {}
 
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void IntegratePeaksCWSD::init() {
diff --git a/Framework/MDAlgorithms/src/IntegratePeaksMD.cpp b/Framework/MDAlgorithms/src/IntegratePeaksMD.cpp
index d9b8776cbb8111ee1b7a62a9746abb82a3d50517..ed62776e64e8c21cb576c9738fcf8b5081058189 100644
--- a/Framework/MDAlgorithms/src/IntegratePeaksMD.cpp
+++ b/Framework/MDAlgorithms/src/IntegratePeaksMD.cpp
@@ -19,6 +19,7 @@
 #include "MantidAPI/FunctionValues.h"
 #include "MantidAPI/FunctionFactory.h"
 #include "MantidAPI/IPeakFunction.h"
+#include "MantidAPI/Run.h"
 #include <boost/math/special_functions/fpclassify.hpp>
 #include <gsl/gsl_integration.h>
 #include <fstream>
@@ -35,7 +36,6 @@ using namespace Mantid::DataObjects;
 using namespace Mantid::DataObjects;
 using namespace Mantid::Geometry;
 
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void IntegratePeaksMD::init() {
diff --git a/Framework/MDAlgorithms/src/IntegratePeaksMD2.cpp b/Framework/MDAlgorithms/src/IntegratePeaksMD2.cpp
index 2f7724a9d32523a48067df4339c6ee41405f8213..a8ea69d8be6e00c3cdb95dc20e68d28af2150e8b 100644
--- a/Framework/MDAlgorithms/src/IntegratePeaksMD2.cpp
+++ b/Framework/MDAlgorithms/src/IntegratePeaksMD2.cpp
@@ -21,6 +21,7 @@
 #include "MantidAPI/FunctionFactory.h"
 #include "MantidAPI/IPeakFunction.h"
 #include "MantidAPI/Progress.h"
+#include "MantidAPI/Run.h"
 #include <boost/math/special_functions/fpclassify.hpp>
 #include <gsl/gsl_integration.h>
 #include <fstream>
@@ -37,7 +38,6 @@ using namespace Mantid::DataObjects;
 using namespace Mantid::DataObjects;
 using namespace Mantid::Geometry;
 
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void IntegratePeaksMD2::init() {
diff --git a/Framework/MDAlgorithms/src/LoadILLAscii.cpp b/Framework/MDAlgorithms/src/LoadILLAscii.cpp
index e09beac5302883dc57051faf1a8f61593842cb5e..e5cb0a709f132cdf732e78fb9f5c504e027c3954 100644
--- a/Framework/MDAlgorithms/src/LoadILLAscii.cpp
+++ b/Framework/MDAlgorithms/src/LoadILLAscii.cpp
@@ -13,6 +13,7 @@
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
 #include "MantidAPI/RegisterFileLoader.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidGeometry/Instrument/ComponentHelper.h"
 #include "MantidGeometry/MDGeometry/MDHistoDimension.h"
diff --git a/Framework/MDAlgorithms/src/LoadSQW.cpp b/Framework/MDAlgorithms/src/LoadSQW.cpp
index d88f420de3565db358e1f117e2dde9f5dfe5b1d7..1c4b76220cd326f94e8f4fb3e38151237fc69917 100644
--- a/Framework/MDAlgorithms/src/LoadSQW.cpp
+++ b/Framework/MDAlgorithms/src/LoadSQW.cpp
@@ -1,6 +1,8 @@
 #include "MantidAPI/FileProperty.h"
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/Progress.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidAPI/WorkspaceProperty.h"
 #include "MantidGeometry/MDGeometry/MDHistoDimensionBuilder.h"
 #include "MantidGeometry/Crystal/OrientedLattice.h"
@@ -26,7 +28,6 @@ namespace Mantid {
 namespace MDAlgorithms {
 
 namespace {
-//------------------------------------------------------------------------------------------------
 /** Helper function allowing to typecast sequence of bytes into proper expected
 *type.
 * The input buffer is interpreted as the template type
diff --git a/Framework/MDAlgorithms/src/LoadSQW2.cpp b/Framework/MDAlgorithms/src/LoadSQW2.cpp
index 55da008d2c881ba2a8cbaf853c8569ee9f8ca9dc..7a13209c9b8f56afdde50c210623b85fa5294b86 100644
--- a/Framework/MDAlgorithms/src/LoadSQW2.cpp
+++ b/Framework/MDAlgorithms/src/LoadSQW2.cpp
@@ -1,12 +1,11 @@
-//------------------------------------------------------------------------------
-// Includes
-//------------------------------------------------------------------------------
 #include "MantidMDAlgorithms/LoadSQW2.h"
 #include "MantidMDAlgorithms/MDWSTransform.h"
 
 #include "MantidAPI/FileProperty.h"
 #include "MantidAPI/Progress.h"
 #include "MantidAPI/RegisterFileLoader.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidDataObjects/BoxControllerNeXusIO.h"
 #include "MantidGeometry/Crystal/OrientedLattice.h"
 #include "MantidGeometry/Instrument/Goniometer.h"
@@ -34,9 +33,6 @@ using Kernel::DblMatrix;
 using Kernel::Matrix;
 using Kernel::V3D;
 
-//------------------------------------------------------------------------------
-// Constants
-//------------------------------------------------------------------------------
 namespace {
 /// Defines buffer size for reading the pixel data. It is assumed to be the
 /// number of pixels to read in a single call. A single pixel is 9 float
@@ -54,10 +50,6 @@ constexpr double INV_TWO_PI = 0.5 / M_PI;
 // Register the algorithm into the AlgorithmFactory
 DECLARE_FILELOADER_ALGORITHM(LoadSQW2)
 
-//------------------------------------------------------------------------------
-// Public methods
-//------------------------------------------------------------------------------
-
 /// Algorithms name for identification. @see Algorithm::name
 const std::string LoadSQW2::name() const { return "LoadSQW"; }
 
@@ -96,10 +88,6 @@ int LoadSQW2::confidence(Kernel::FileDescriptor &descriptor) const {
   return 81;
 }
 
-//------------------------------------------------------------------------------
-// Private methods
-//------------------------------------------------------------------------------
-
 /// Initialize the algorithm's properties.
 void LoadSQW2::init() {
   using namespace API;
diff --git a/Framework/MDAlgorithms/src/MDNormDirectSC.cpp b/Framework/MDAlgorithms/src/MDNormDirectSC.cpp
index cbf8e881e93e2aa6c04b5c32b0f9b14d52a1e469..af8c4b43df728be47813e01d008209789402573b 100644
--- a/Framework/MDAlgorithms/src/MDNormDirectSC.cpp
+++ b/Framework/MDAlgorithms/src/MDNormDirectSC.cpp
@@ -2,6 +2,7 @@
 
 #include "MantidAPI/CommonBinsValidator.h"
 #include "MantidAPI/InstrumentValidator.h"
+#include "MantidAPI/Run.h"
 #include "MantidDataObjects/EventWorkspace.h"
 #include "MantidDataObjects/MDEventWorkspace.h"
 #include "MantidDataObjects/MDHistoWorkspace.h"
@@ -31,7 +32,6 @@ bool compareMomentum(const Mantid::Kernel::VMD &v1,
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(MDNormDirectSC)
 
-//----------------------------------------------------------------------------------------------
 /**
  * Constructor
  */
@@ -60,7 +60,6 @@ const std::string MDNormDirectSC::summary() const {
 /// Algorithm's name for use in the GUI and help. @see Algorithm::name
 const std::string MDNormDirectSC::name() const { return "MDNormDirectSC"; }
 
-//----------------------------------------------------------------------------------------------
 /**
   * Initialize the algorithm's properties.
   */
diff --git a/Framework/MDAlgorithms/src/MDNormSCD.cpp b/Framework/MDAlgorithms/src/MDNormSCD.cpp
index 744055138e1c347690de58990a0b010f27ecf244..1370ab0c8211e48e7c08412df0f24d1300aa8c21 100644
--- a/Framework/MDAlgorithms/src/MDNormSCD.cpp
+++ b/Framework/MDAlgorithms/src/MDNormSCD.cpp
@@ -2,6 +2,7 @@
 
 #include "MantidAPI/CommonBinsValidator.h"
 #include "MantidAPI/InstrumentValidator.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidDataObjects/EventWorkspace.h"
 #include "MantidDataObjects/MDEventWorkspace.h"
@@ -31,7 +32,6 @@ bool compareMomentum(const Mantid::Kernel::VMD &v1,
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(MDNormSCD)
 
-//----------------------------------------------------------------------------------------------
 /**
  * Constructor
  */
@@ -59,7 +59,6 @@ const std::string MDNormSCD::summary() const {
 /// Algorithm's name for use in the GUI and help. @see Algorithm::name
 const std::string MDNormSCD::name() const { return "MDNormSCD"; }
 
-//----------------------------------------------------------------------------------------------
 /**
   * Initialize the algorithm's properties.
   */
@@ -107,7 +106,6 @@ void MDNormSCD::init() {
                   "A name for the output normalization MDHistoWorkspace.");
 }
 
-//----------------------------------------------------------------------------------------------
 /**
  * Execute the algorithm.
  */
diff --git a/Framework/MDAlgorithms/src/MDWSDescription.cpp b/Framework/MDAlgorithms/src/MDWSDescription.cpp
index 4caed18d9be7edad4be64e46c542e0481a8de6df..442c5a2070a8522be22a5fb6582039fc707a2563 100644
--- a/Framework/MDAlgorithms/src/MDWSDescription.cpp
+++ b/Framework/MDAlgorithms/src/MDWSDescription.cpp
@@ -3,6 +3,8 @@
 #include "MantidAPI/MatrixWorkspace.h"
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/NumericAxis.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 
 #include "MantidKernel/TimeSeriesProperty.h"
 #include "MantidKernel/Strings.h"
@@ -450,5 +452,9 @@ bool MDWSDescription::isQ3DMode() const {
   return this->AlgID.compare("Q3D") == 0;
 }
 
+bool MDWSDescription::hasLattice() const {
+  return m_InWS->sample().hasOrientedLattice();
+}
+
 } // end namespace MDAlgorithms
 } // end namespace Mantid
diff --git a/Framework/MDAlgorithms/src/PreprocessDetectorsToMD.cpp b/Framework/MDAlgorithms/src/PreprocessDetectorsToMD.cpp
index f139db950468606e91daafcd575ac35d474b03e9..20d9ba263b34ce4871f08399f388b23d070e7f15 100644
--- a/Framework/MDAlgorithms/src/PreprocessDetectorsToMD.cpp
+++ b/Framework/MDAlgorithms/src/PreprocessDetectorsToMD.cpp
@@ -2,6 +2,7 @@
 #include "MantidAPI/InstrumentValidator.h"
 #include "MantidAPI/MatrixWorkspace.h"
 #include "MantidAPI/NumericAxis.h"
+#include "MantidAPI/Run.h"
 #include "MantidGeometry/Instrument.h"
 #include "MantidKernel/CompositeValidator.h"
 #include "MantidKernel/PropertyWithValue.h"
@@ -18,7 +19,6 @@ DECLARE_ALGORITHM(PreprocessDetectorsToMD)
 PreprocessDetectorsToMD::PreprocessDetectorsToMD()
     : m_getEFixed(false), m_getIsMasked(false) {}
 
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties. */
 void PreprocessDetectorsToMD::init() {
   auto ws_valid = boost::make_shared<Kernel::CompositeValidator>();
diff --git a/Framework/MDAlgorithms/src/Quantification/CachedExperimentInfo.cpp b/Framework/MDAlgorithms/src/Quantification/CachedExperimentInfo.cpp
index ed66d4219532fa15788dcd1d5866fc2de4217193..dce1e6dba694f661dbfbb87d5cfc15a034db74f4 100644
--- a/Framework/MDAlgorithms/src/Quantification/CachedExperimentInfo.cpp
+++ b/Framework/MDAlgorithms/src/Quantification/CachedExperimentInfo.cpp
@@ -1,12 +1,10 @@
-//
-// Includes
-//
 #include "MantidMDAlgorithms/Quantification/CachedExperimentInfo.h"
 #include "MantidGeometry/Crystal/OrientedLattice.h"
 #include "MantidGeometry/Instrument.h"
 #include "MantidGeometry/Instrument/ReferenceFrame.h"
 #include "MantidGeometry/Instrument/Goniometer.h"
 #include "MantidGeometry/Instrument/DetectorGroup.h"
+#include "MantidAPI/Sample.h"
 
 namespace Mantid {
 namespace MDAlgorithms {
diff --git a/Framework/MDAlgorithms/src/Quantification/ForegroundModel.cpp b/Framework/MDAlgorithms/src/Quantification/ForegroundModel.cpp
index 3655083df19b90ffac2cc432dca5b8245c21a095..48087760a1ceb9171d2768e096f561d8c940e4df 100644
--- a/Framework/MDAlgorithms/src/Quantification/ForegroundModel.cpp
+++ b/Framework/MDAlgorithms/src/Quantification/ForegroundModel.cpp
@@ -1,9 +1,8 @@
-//
-// Includes
-//
 #include "MantidMDAlgorithms/Quantification/ForegroundModel.h"
 #include "MantidKernel/Exception.h"
 #include "MantidKernel/MagneticFormFactorTable.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 
 namespace Mantid {
 namespace MDAlgorithms {
diff --git a/Framework/MDAlgorithms/src/Quantification/Models/QCoordinate.cpp b/Framework/MDAlgorithms/src/Quantification/Models/QCoordinate.cpp
index 11664c0d376b192ee20fdda5ef2c9e67564064f1..e74436ae3380ae9f812e9ceace699080bad576e7 100644
--- a/Framework/MDAlgorithms/src/Quantification/Models/QCoordinate.cpp
+++ b/Framework/MDAlgorithms/src/Quantification/Models/QCoordinate.cpp
@@ -1,5 +1,6 @@
-// Includes
 #include "MantidMDAlgorithms/Quantification/Models/QCoordinate.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include <cmath>
 
 namespace Mantid {
diff --git a/Framework/MDAlgorithms/src/Quantification/Resolution/TobyFitBMatrix.cpp b/Framework/MDAlgorithms/src/Quantification/Resolution/TobyFitBMatrix.cpp
index 1990468d911754de334e2e1978aff384a23e3485..bd7546ff0518a6754ed7813b4bb4e5e8969e7fec 100644
--- a/Framework/MDAlgorithms/src/Quantification/Resolution/TobyFitBMatrix.cpp
+++ b/Framework/MDAlgorithms/src/Quantification/Resolution/TobyFitBMatrix.cpp
@@ -5,6 +5,7 @@
 
 #include "MantidAPI/ChopperModel.h"
 #include "MantidAPI/ModeratorModel.h"
+#include "MantidAPI/Sample.h"
 #include "MantidGeometry/Crystal/OrientedLattice.h"
 #include "MantidGeometry/Instrument/ReferenceFrame.h"
 
diff --git a/Framework/MDAlgorithms/src/Quantification/Resolution/TobyFitResolutionModel.cpp b/Framework/MDAlgorithms/src/Quantification/Resolution/TobyFitResolutionModel.cpp
index 1202cdb98d3140d0b3a35eaa10fc20ff8576b14e..96cc4486aa7694e79b6224550f922ee107ae53ef 100644
--- a/Framework/MDAlgorithms/src/Quantification/Resolution/TobyFitResolutionModel.cpp
+++ b/Framework/MDAlgorithms/src/Quantification/Resolution/TobyFitResolutionModel.cpp
@@ -1,10 +1,11 @@
-// Includes
 #include "MantidMDAlgorithms/Quantification/Resolution/TobyFitResolutionModel.h"
 #include "MantidMDAlgorithms/Quantification/Resolution/ModeratorChopperResolution.h"
 #include "MantidMDAlgorithms/Quantification/CachedExperimentInfo.h"
 
 #include "MantidAPI/FrameworkManager.h"
 #include "MantidAPI/IMDEventWorkspace.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidGeometry/Instrument/ReferenceFrame.h"
 #include "MantidGeometry/Crystal/OrientedLattice.h"
 #include "MantidKernel/MersenneTwister.h"
diff --git a/Framework/MDAlgorithms/src/SaveZODS.cpp b/Framework/MDAlgorithms/src/SaveZODS.cpp
index 07f4e37e62e34c74dd416d43ecb1d4f3087e56a1..495b4d8fd9b8139c968de5cd6fefbef25e5f5402 100644
--- a/Framework/MDAlgorithms/src/SaveZODS.cpp
+++ b/Framework/MDAlgorithms/src/SaveZODS.cpp
@@ -1,5 +1,6 @@
 #include "MantidAPI/FileProperty.h"
 #include "MantidAPI/IMDHistoWorkspace.h"
+#include "MantidAPI/Sample.h"
 #include "MantidKernel/System.h"
 #include "MantidMDAlgorithms/SaveZODS.h"
 #include "MantidDataObjects/MDHistoWorkspace.h"
@@ -16,7 +17,6 @@ namespace MDAlgorithms {
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(SaveZODS)
 
-//----------------------------------------------------------------------------------------------
 /// Algorithm's name for identification. @see Algorithm::name
 const std::string SaveZODS::name() const { return "SaveZODS"; }
 
@@ -28,9 +28,6 @@ const std::string SaveZODS::category() const {
   return "MDAlgorithms\\DataHandling";
 }
 
-//----------------------------------------------------------------------------------------------
-
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void SaveZODS::init() {
@@ -43,7 +40,6 @@ void SaveZODS::init() {
       "The name of the HDF5 file to write, as a full or relative path.");
 }
 
-//----------------------------------------------------------------------------------------------
 /** Execute the algorithm.
  */
 void SaveZODS::exec() {
diff --git a/Framework/MDAlgorithms/src/SlicingAlgorithm.cpp b/Framework/MDAlgorithms/src/SlicingAlgorithm.cpp
index 602379d6b54742a68839fcb0ae8788f9c26db850..05d6ee29d070ee276d31ccd2334ce312d75661d1 100644
--- a/Framework/MDAlgorithms/src/SlicingAlgorithm.cpp
+++ b/Framework/MDAlgorithms/src/SlicingAlgorithm.cpp
@@ -10,6 +10,7 @@
 #include "MantidKernel/VisibleWhenProperty.h"
 #include "MantidKernel/ArrayLengthValidator.h"
 #include "MantidMDAlgorithms/SlicingAlgorithm.h"
+#include "MantidAPI/Run.h"
 
 #include <boost/regex.hpp>
 
@@ -21,7 +22,6 @@ using Mantid::Kernel::Strings::strip;
 namespace Mantid {
 namespace MDAlgorithms {
 
-//----------------------------------------------------------------------------------------------
 /** Constructor
  */
 SlicingAlgorithm::SlicingAlgorithm()
@@ -30,7 +30,6 @@ SlicingAlgorithm::SlicingAlgorithm()
       m_axisAligned(true), m_outD(0), // unititialized and should be invalid
       m_NormalizeBasisVectors(false) {}
 
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void SlicingAlgorithm::initSlicingProps() {
diff --git a/Framework/PythonInterface/mantid/api/src/Exports/IPeaksWorkspace.cpp b/Framework/PythonInterface/mantid/api/src/Exports/IPeaksWorkspace.cpp
index 76d09bebf7baa6df1903cbfdb431e64762cc2a60..8eeb370e494d6f1569208e0125381ef57ea611c0 100644
--- a/Framework/PythonInterface/mantid/api/src/Exports/IPeaksWorkspace.cpp
+++ b/Framework/PythonInterface/mantid/api/src/Exports/IPeaksWorkspace.cpp
@@ -1,4 +1,5 @@
 #include "MantidAPI/IPeaksWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidGeometry/Crystal/IPeak.h"
 #include "MantidPythonInterface/kernel/GetPointer.h"
 #include "MantidPythonInterface/kernel/Converters/PyObjectToV3D.h"
diff --git a/Framework/PythonInterface/mantid/api/src/Exports/MatrixWorkspace.cpp b/Framework/PythonInterface/mantid/api/src/Exports/MatrixWorkspace.cpp
index 8d3edfa0d75d83eceb77837953c9ad6bb77cc7ee..7de857936c62f46b12e6689c8b325cfbee77fc0e 100644
--- a/Framework/PythonInterface/mantid/api/src/Exports/MatrixWorkspace.cpp
+++ b/Framework/PythonInterface/mantid/api/src/Exports/MatrixWorkspace.cpp
@@ -1,5 +1,6 @@
 #include "MantidAPI/Axis.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceOpOverloads.h"
 
 #include "MantidPythonInterface/api/CloneMatrixWorkspace.h"
diff --git a/Framework/TestHelpers/src/WorkspaceCreationHelper.cpp b/Framework/TestHelpers/src/WorkspaceCreationHelper.cpp
index 4b427d045f710135cd3767c3780c7b3b8a5f06a0..310a1826c0f6d1530830b3663b587de84e84e966 100644
--- a/Framework/TestHelpers/src/WorkspaceCreationHelper.cpp
+++ b/Framework/TestHelpers/src/WorkspaceCreationHelper.cpp
@@ -8,9 +8,6 @@
  *higher
  *  than DataObjects (e.g. any algorithm), even if going via the factory.
  *********************************************************************************/
-//------------------------------------------------------------------------------
-// Includes
-//------------------------------------------------------------------------------
 #include "MantidTestHelpers/WorkspaceCreationHelper.h"
 #include "MantidTestHelpers/ComponentCreationHelper.h"
 #include "MantidTestHelpers/InstrumentCreationHelper.h"
@@ -19,6 +16,7 @@
 #include "MantidAPI/Run.h"
 #include "MantidAPI/IAlgorithm.h"
 #include "MantidAPI/Algorithm.h"
+#include "MantidAPI/Sample.h"
 #include "MantidAPI/SpectraAxis.h"
 #include "MantidAPI/NumericAxis.h"
 #include "MantidDataObjects/PeaksWorkspace.h"
diff --git a/Framework/WorkflowAlgorithms/src/DgsConvertToEnergyTransfer.cpp b/Framework/WorkflowAlgorithms/src/DgsConvertToEnergyTransfer.cpp
index 2159055666eb69cda292f1c47c9379a10cc18c36..8736a061c97a55188f0462fbf73eb77a23ff26e9 100644
--- a/Framework/WorkflowAlgorithms/src/DgsConvertToEnergyTransfer.cpp
+++ b/Framework/WorkflowAlgorithms/src/DgsConvertToEnergyTransfer.cpp
@@ -1,6 +1,7 @@
 #include "MantidWorkflowAlgorithms/DgsConvertToEnergyTransfer.h"
 #include "MantidAPI/MatrixWorkspace.h"
 #include "MantidKernel/PropertyManagerDataService.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceHistory.h"
 #include "MantidGeometry/IDetector.h"
 #include "MantidGeometry/Instrument.h"
@@ -30,7 +31,6 @@ namespace WorkflowAlgorithms {
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(DgsConvertToEnergyTransfer)
 
-//----------------------------------------------------------------------------------------------
 /// Algorithm's name for identification. @see Algorithm::name
 const std::string DgsConvertToEnergyTransfer::name() const {
   return "DgsConvertToEnergyTransfer";
@@ -44,9 +44,6 @@ const std::string DgsConvertToEnergyTransfer::category() const {
   return "Workflow\\Inelastic\\UsesPropertyManager";
 }
 
-//----------------------------------------------------------------------------------------------
-
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void DgsConvertToEnergyTransfer::init() {
@@ -87,7 +84,6 @@ void DgsConvertToEnergyTransfer::init() {
                         Direction::Input);
 }
 
-//----------------------------------------------------------------------------------------------
 /** Execute the algorithm.
  */
 void DgsConvertToEnergyTransfer::exec() {
diff --git a/Framework/WorkflowAlgorithms/src/DgsPreprocessData.cpp b/Framework/WorkflowAlgorithms/src/DgsPreprocessData.cpp
index 4a27bce5158b091838907a765021cd2c93465716..3e1a7d356f8ae3c230589b8a54bea4e301ba7a67 100644
--- a/Framework/WorkflowAlgorithms/src/DgsPreprocessData.cpp
+++ b/Framework/WorkflowAlgorithms/src/DgsPreprocessData.cpp
@@ -5,6 +5,7 @@
 #include "MantidAPI/FileFinder.h"
 #include "MantidAPI/FileProperty.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/PropertyManagerDataService.h"
 #include "MantidGeometry/Instrument.h"
 #include "MantidKernel/ConfigService.h"
@@ -26,7 +27,6 @@ namespace WorkflowAlgorithms {
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(DgsPreprocessData)
 
-//----------------------------------------------------------------------------------------------
 /// Algorithm's name for identification. @see Algorithm::name
 const std::string DgsPreprocessData::name() const {
   return "DgsPreprocessData";
@@ -40,9 +40,6 @@ const std::string DgsPreprocessData::category() const {
   return "Workflow\\Inelastic\\UsesPropertyManager";
 }
 
-//----------------------------------------------------------------------------------------------
-
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void DgsPreprocessData::init() {
@@ -63,7 +60,6 @@ void DgsPreprocessData::init() {
                         Direction::Input);
 }
 
-//----------------------------------------------------------------------------------------------
 /** Execute the algorithm.
  */
 void DgsPreprocessData::exec() {
diff --git a/Framework/WorkflowAlgorithms/src/DgsReduction.cpp b/Framework/WorkflowAlgorithms/src/DgsReduction.cpp
index 4a53a2b3ea98af921db733a13b4c1498d53ee05e..0bdada58e559ddfe9862af894424401fca860d7d 100644
--- a/Framework/WorkflowAlgorithms/src/DgsReduction.cpp
+++ b/Framework/WorkflowAlgorithms/src/DgsReduction.cpp
@@ -1,6 +1,7 @@
 #include "MantidWorkflowAlgorithms/DgsReduction.h"
 
 #include "MantidAPI/FileProperty.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/PropertyManagerDataService.h"
 #include "MantidKernel/ArrayProperty.h"
 #include "MantidKernel/BoundedValidator.h"
@@ -27,7 +28,6 @@ namespace WorkflowAlgorithms {
 // Register the algorithm into the AlgorithmFactory
 DECLARE_ALGORITHM(DgsReduction)
 
-//----------------------------------------------------------------------------------------------
 /// Algorithm's name for identification. @see Algorithm::name
 const std::string DgsReduction::name() const { return "DgsReduction"; }
 
@@ -39,9 +39,6 @@ const std::string DgsReduction::category() const {
   return "Workflow\\Inelastic";
 }
 
-//----------------------------------------------------------------------------------------------
-
-//----------------------------------------------------------------------------------------------
 /** Initialize the algorithm's properties.
  */
 void DgsReduction::init() {
diff --git a/Framework/WorkflowAlgorithms/src/EQSANSDarkCurrentSubtraction.cpp b/Framework/WorkflowAlgorithms/src/EQSANSDarkCurrentSubtraction.cpp
index 007283c41f2f10eac592be5aa9907207a12fe53f..a4e189b80a076db2e0281436a1bb2d85d4eafdfb 100644
--- a/Framework/WorkflowAlgorithms/src/EQSANSDarkCurrentSubtraction.cpp
+++ b/Framework/WorkflowAlgorithms/src/EQSANSDarkCurrentSubtraction.cpp
@@ -1,11 +1,9 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/EQSANSDarkCurrentSubtraction.h"
 #include "MantidDataObjects/EventWorkspace.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidKernel/TimeSeriesProperty.h"
 #include "MantidAPI/FileProperty.h"
+#include "MantidAPI/Run.h"
 #include "Poco/Path.h"
 #include "Poco/String.h"
 #include "MantidAPI/AlgorithmProperty.h"
diff --git a/Framework/WorkflowAlgorithms/src/EQSANSDarkCurrentSubtraction2.cpp b/Framework/WorkflowAlgorithms/src/EQSANSDarkCurrentSubtraction2.cpp
index 4192b2e24f8a3ae4578157a5afcd131564622793..fc5db20edebca8719f7efd74f71bdbe43ddafc26 100644
--- a/Framework/WorkflowAlgorithms/src/EQSANSDarkCurrentSubtraction2.cpp
+++ b/Framework/WorkflowAlgorithms/src/EQSANSDarkCurrentSubtraction2.cpp
@@ -1,11 +1,9 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/EQSANSDarkCurrentSubtraction2.h"
 #include "MantidDataObjects/EventWorkspace.h"
 #include "MantidAPI/AlgorithmProperty.h"
 #include "MantidAPI/FileProperty.h"
 #include "MantidKernel/PropertyManagerDataService.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidGeometry/IDetector.h"
 #include "MantidKernel/PropertyManager.h"
diff --git a/Framework/WorkflowAlgorithms/src/EQSANSLoad.cpp b/Framework/WorkflowAlgorithms/src/EQSANSLoad.cpp
index e86447ac3d96fcc624df9349df3719d69a88d87d..59c6490ef04c5887870946ec662113bb2dd2eb2c 100644
--- a/Framework/WorkflowAlgorithms/src/EQSANSLoad.cpp
+++ b/Framework/WorkflowAlgorithms/src/EQSANSLoad.cpp
@@ -1,6 +1,3 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/EQSANSLoad.h"
 #include "MantidWorkflowAlgorithms/EQSANSInstrument.h"
 #include "MantidAPI/AlgorithmManager.h"
@@ -9,6 +6,7 @@
 #include "MantidAPI/AnalysisDataService.h"
 #include "MantidAPI/FileFinder.h"
 #include "MantidAPI/FileProperty.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/PropertyManagerDataService.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidGeometry/Instrument.h"
diff --git a/Framework/WorkflowAlgorithms/src/EQSANSMonitorTOF.cpp b/Framework/WorkflowAlgorithms/src/EQSANSMonitorTOF.cpp
index 4a738618f6cb512d2f6899ca4c930ef70538c174..722da805e1e1eacecda97717afad44ca0a4f9a1d 100644
--- a/Framework/WorkflowAlgorithms/src/EQSANSMonitorTOF.cpp
+++ b/Framework/WorkflowAlgorithms/src/EQSANSMonitorTOF.cpp
@@ -1,7 +1,5 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/EQSANSMonitorTOF.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidKernel/TimeSeriesProperty.h"
diff --git a/Framework/WorkflowAlgorithms/src/EQSANSQ2D.cpp b/Framework/WorkflowAlgorithms/src/EQSANSQ2D.cpp
index bb955db0a6865bfca032658319562f3a8b152cf4..32d410265f42cfe2446488701acf2768ca7e3662 100644
--- a/Framework/WorkflowAlgorithms/src/EQSANSQ2D.cpp
+++ b/Framework/WorkflowAlgorithms/src/EQSANSQ2D.cpp
@@ -1,8 +1,6 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/EQSANSQ2D.h"
 #include "MantidWorkflowAlgorithms/EQSANSInstrument.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
 #include "MantidGeometry/Instrument.h"
 #include "Poco/NumberFormatter.h"
diff --git a/Framework/WorkflowAlgorithms/src/HFIRDarkCurrentSubtraction.cpp b/Framework/WorkflowAlgorithms/src/HFIRDarkCurrentSubtraction.cpp
index f02ebc23bc18b3b085186853f67c454dd4ece1cb..812c1038fd67a9fed29c8d3355d9e48418c379f8 100644
--- a/Framework/WorkflowAlgorithms/src/HFIRDarkCurrentSubtraction.cpp
+++ b/Framework/WorkflowAlgorithms/src/HFIRDarkCurrentSubtraction.cpp
@@ -1,6 +1,3 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/HFIRDarkCurrentSubtraction.h"
 #include "MantidAPI/MatrixWorkspace.h"
 #include "MantidAPI/WorkspaceUnitValidator.h"
@@ -8,6 +5,7 @@
 #include "Poco/Path.h"
 #include "Poco/String.h"
 #include "MantidAPI/AlgorithmProperty.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/PropertyManagerDataService.h"
 #include "MantidKernel/PropertyManager.h"
 
diff --git a/Framework/WorkflowAlgorithms/src/HFIRInstrument.cpp b/Framework/WorkflowAlgorithms/src/HFIRInstrument.cpp
index ceb5c81114ac707157ba12462117c28b73f749e7..7b77328ece3f11825c7486dcc47b4c00ef3a67c9 100644
--- a/Framework/WorkflowAlgorithms/src/HFIRInstrument.cpp
+++ b/Framework/WorkflowAlgorithms/src/HFIRInstrument.cpp
@@ -1,6 +1,3 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/HFIRInstrument.h"
 #include "MantidKernel/Exception.h"
 #include "MantidKernel/Property.h"
@@ -8,6 +5,7 @@
 #include "MantidDataObjects/Workspace2D.h"
 #include "MantidKernel/StringTokenizer.h"
 #include "MantidGeometry/Instrument.h"
+#include "MantidAPI/Run.h"
 #include "Poco/NumberParser.h"
 
 namespace Mantid {
diff --git a/Framework/WorkflowAlgorithms/src/HFIRLoad.cpp b/Framework/WorkflowAlgorithms/src/HFIRLoad.cpp
index 858e1d276c0b5a9a25fb3533215a08c56ba493ff..72a933f66a6442994d58a94d517cea37721e15cf 100644
--- a/Framework/WorkflowAlgorithms/src/HFIRLoad.cpp
+++ b/Framework/WorkflowAlgorithms/src/HFIRLoad.cpp
@@ -1,6 +1,3 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include <string>
 
 #include "MantidWorkflowAlgorithms/HFIRLoad.h"
@@ -10,6 +7,7 @@
 #include "MantidAPI/AlgorithmProperty.h"
 #include "MantidKernel/PropertyManagerDataService.h"
 #include "MantidAPI/FileProperty.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/PropertyManager.h"
 
 namespace Mantid {
diff --git a/Framework/WorkflowAlgorithms/src/HFIRSANSNormalise.cpp b/Framework/WorkflowAlgorithms/src/HFIRSANSNormalise.cpp
index 223b2a2757dca44ad9b609cc85b26bca53ed603b..7c7467a5e3e7801904808aea932df686a3f02ba4 100644
--- a/Framework/WorkflowAlgorithms/src/HFIRSANSNormalise.cpp
+++ b/Framework/WorkflowAlgorithms/src/HFIRSANSNormalise.cpp
@@ -1,8 +1,6 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/HFIRSANSNormalise.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/ListValidator.h"
 
 #include <boost/algorithm/string.hpp>
diff --git a/Framework/WorkflowAlgorithms/src/RefReduction.cpp b/Framework/WorkflowAlgorithms/src/RefReduction.cpp
index 26f5f8b2e11fdc6ef58fe5f73d90085fbe82a112..fa22f2acedfc6dae7976615db35eb4ae2a0e5322 100644
--- a/Framework/WorkflowAlgorithms/src/RefReduction.cpp
+++ b/Framework/WorkflowAlgorithms/src/RefReduction.cpp
@@ -1,9 +1,7 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/RefReduction.h"
 #include "MantidAPI/FileFinder.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidDataObjects/EventWorkspace.h"
 #include "MantidGeometry/Instrument.h"
 #include "MantidKernel/ArrayProperty.h"
diff --git a/Framework/WorkflowAlgorithms/src/SANSSensitivityCorrection.cpp b/Framework/WorkflowAlgorithms/src/SANSSensitivityCorrection.cpp
index fde9c01e11a221fe4bcb6db74feb8c28fad50e13..350d754009aa463fc7d667115201af7ded44f47c 100644
--- a/Framework/WorkflowAlgorithms/src/SANSSensitivityCorrection.cpp
+++ b/Framework/WorkflowAlgorithms/src/SANSSensitivityCorrection.cpp
@@ -1,6 +1,3 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidWorkflowAlgorithms/SANSSensitivityCorrection.h"
 #include "MantidDataObjects/EventWorkspace.h"
 #include "MantidAPI/AnalysisDataService.h"
@@ -8,6 +5,7 @@
 #include "MantidKernel/TimeSeriesProperty.h"
 #include "MantidAPI/FileProperty.h"
 #include "MantidAPI/FileFinder.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/TableRow.h"
 #include "Poco/File.h"
 #include "Poco/Path.h"
diff --git a/MantidPlot/src/LabelTool.cpp b/MantidPlot/src/LabelTool.cpp
index 2fdfd68ae7a7e6c13eb6941181f062c2ab918da5..e956a22180bf9c8dd6aea81d95cba7f74d6a2ea4 100644
--- a/MantidPlot/src/LabelTool.cpp
+++ b/MantidPlot/src/LabelTool.cpp
@@ -7,6 +7,7 @@
 #include "Mantid/LabelToolLogValuesDialog.h"
 // Mantid
 #include "MantidKernel/TimeSeriesProperty.h"
+#include "MantidAPI/Run.h"
 // Qwt
 #include <qwt_picker.h>
 #include <qwt_plot_canvas.h>
diff --git a/MantidPlot/src/Mantid/MantidGroupPlotGenerator.cpp b/MantidPlot/src/Mantid/MantidGroupPlotGenerator.cpp
index 2fede3c1cd45fef86938730d5ddb66a27d7bfcf0..1f798100abb6baf61c79657e9c5b6bcd4e3745bb 100644
--- a/MantidPlot/src/Mantid/MantidGroupPlotGenerator.cpp
+++ b/MantidPlot/src/Mantid/MantidGroupPlotGenerator.cpp
@@ -1,6 +1,7 @@
 #include "MantidGroupPlotGenerator.h"
 
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 
 using Mantid::API::WorkspaceGroup_const_sptr;
diff --git a/MantidPlot/src/Mantid/MantidSampleMaterialDialog.cpp b/MantidPlot/src/Mantid/MantidSampleMaterialDialog.cpp
index 9493d788026fc4ceb010733ccf79562f834cdb0a..ca0a69a9573ea0a80645d8da5800efad4c494bd9 100644
--- a/MantidPlot/src/Mantid/MantidSampleMaterialDialog.cpp
+++ b/MantidPlot/src/Mantid/MantidSampleMaterialDialog.cpp
@@ -1,12 +1,10 @@
-//----------------------------------
-// Includes
-//----------------------------------
 #include "MantidSampleMaterialDialog.h"
 
 #include "MantidUI.h"
 
 #include "MantidAPI/ExperimentInfo.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Sample.h"
 #include "MantidKernel/Material.h"
 
 #include <QTreeWidgetItem>
diff --git a/MantidPlot/src/Mantid/MantidSurfacePlotDialog.cpp b/MantidPlot/src/Mantid/MantidSurfacePlotDialog.cpp
index bc14dce8eb28449f4c703df37b21a1ef5377f18f..a8f7da5ed3f94e3da8fca88000622e06daa63d31 100644
--- a/MantidPlot/src/Mantid/MantidSurfacePlotDialog.cpp
+++ b/MantidPlot/src/Mantid/MantidSurfacePlotDialog.cpp
@@ -1,6 +1,7 @@
 #include "MantidSurfacePlotDialog.h"
 #include "MantidAPI/IMDWorkspace.h"
 #include "MantidAPI/ExperimentInfo.h"
+#include "MantidAPI/Run.h"
 #include <QMessageBox>
 
 using Mantid::API::IMDWorkspace;
diff --git a/MantidPlot/src/Mantid/MantidUI.cpp b/MantidPlot/src/Mantid/MantidUI.cpp
index 4162f0a243ae5c4438433fe72b0397965daa9de8..1108b9ea90d9c62c2e43f88a4cfdf0b26f9e97ef 100644
--- a/MantidPlot/src/Mantid/MantidUI.cpp
+++ b/MantidPlot/src/Mantid/MantidUI.cpp
@@ -48,6 +48,7 @@
 #include "MantidAPI/IMDHistoWorkspace.h"
 #include "MantidAPI/IMDEventWorkspace.h"
 #include "MantidAPI/IPeaksWorkspace.h"
+#include "MantidAPI/Run.h"
 
 #include <QMessageBox>
 #include <QTextEdit>
diff --git a/MantidPlot/src/Mantid/SampleLogDialogBase.cpp b/MantidPlot/src/Mantid/SampleLogDialogBase.cpp
index 124c481253d84d404e38e2980895a7146beb22a7..07e7c360d57e693668d0f521f8b6f2b275d7a5e5 100644
--- a/MantidPlot/src/Mantid/SampleLogDialogBase.cpp
+++ b/MantidPlot/src/Mantid/SampleLogDialogBase.cpp
@@ -1,12 +1,9 @@
-//----------------------------------
-// Includes
-//----------------------------------
-
 #include "SampleLogDialogBase.h"
 
 // Mantid API
 #include <MantidAPI/MultipleExperimentInfos.h>
 #include <MantidAPI/IMDWorkspace.h>
+#include "MantidAPI/Run.h"
 
 // Mantid Kernel
 #include <MantidKernel/TimeSeriesProperty.h>
diff --git a/MantidQt/CustomDialogs/src/PlotAsymmetryByLogValueDialog.cpp b/MantidQt/CustomDialogs/src/PlotAsymmetryByLogValueDialog.cpp
index 4e597c62e2c5d8ad78657abe1e1f62c7f2f15ad9..4e4407a53ece915e1b558deb53925b72db5c74d5 100644
--- a/MantidQt/CustomDialogs/src/PlotAsymmetryByLogValueDialog.cpp
+++ b/MantidQt/CustomDialogs/src/PlotAsymmetryByLogValueDialog.cpp
@@ -5,6 +5,7 @@
 #include "MantidAPI/AlgorithmFactory.h"
 #include "MantidAPI/Algorithm.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 
 #include <QLabel>
 #include <QLineEdit>
@@ -30,9 +31,6 @@ DECLARE_DIALOG(PlotAsymmetryByLogValueDialog)
 using namespace MantidQt::CustomDialogs;
 using namespace MantidQt::API;
 
-//---------------------------------------
-// Public member functions
-//---------------------------------------
 /**
  * Constructor
  */
@@ -51,9 +49,6 @@ PlotAsymmetryByLogValueDialog::~PlotAsymmetryByLogValueDialog() {
   delete browseButtonMapper;
 }
 
-//---------------------------------------
-// Private member functions
-//---------------------------------------
 /**
  * Reimplemented virtual function to set up the dialog
  */
diff --git a/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffFittingPresenter.cpp b/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffFittingPresenter.cpp
index f23d5878dd3ba44735f900ac086d56c8526c2820..6f7f31fe0f0b2635d76388c5f805a8bd64631f58 100644
--- a/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffFittingPresenter.cpp
+++ b/MantidQt/CustomInterfaces/src/EnggDiffraction/EnggDiffFittingPresenter.cpp
@@ -2,6 +2,7 @@
 #include "MantidAPI/AlgorithmManager.h"
 #include "MantidAPI/ITableWorkspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/TableRow.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidQtCustomInterfaces/EnggDiffraction/EnggDiffFittingPresWorker.h"
diff --git a/MantidQt/CustomInterfaces/src/Indirect/ApplyPaalmanPings.cpp b/MantidQt/CustomInterfaces/src/Indirect/ApplyPaalmanPings.cpp
index a72c1c4c083b97786b45a3070ea668c75dc09a24..5806df93a0c5fb7e052a763eec7b0b2c6b8396c2 100644
--- a/MantidQt/CustomInterfaces/src/Indirect/ApplyPaalmanPings.cpp
+++ b/MantidQt/CustomInterfaces/src/Indirect/ApplyPaalmanPings.cpp
@@ -1,6 +1,7 @@
 #include "MantidQtCustomInterfaces/Indirect/ApplyPaalmanPings.h"
 #include "MantidQtCustomInterfaces/UserInputValidator.h"
 #include "MantidAPI/AnalysisDataService.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/TextAxis.h"
 
 #include <QStringList>
@@ -590,4 +591,4 @@ void ApplyPaalmanPings::plotClicked() {
   }
 }
 } // namespace CustomInterfaces
-} // namespace MantidQt
\ No newline at end of file
+} // namespace MantidQt
diff --git a/MantidQt/CustomInterfaces/src/Indirect/ContainerSubtraction.cpp b/MantidQt/CustomInterfaces/src/Indirect/ContainerSubtraction.cpp
index f925596bd1800b95844510a76106ebd353448acd..96880b9ab86a8fb838b5d30f307ceda1d15f936f 100644
--- a/MantidQt/CustomInterfaces/src/Indirect/ContainerSubtraction.cpp
+++ b/MantidQt/CustomInterfaces/src/Indirect/ContainerSubtraction.cpp
@@ -2,6 +2,7 @@
 #include "MantidQtCustomInterfaces/UserInputValidator.h"
 
 #include "MantidAPI/Axis.h"
+#include "MantidAPI/Run.h"
 
 using namespace Mantid::API;
 
@@ -480,4 +481,4 @@ void ContainerSubtraction::plotClicked() {
 }
 
 } // namespace CustomInterfaces
-} // namespace MantidQt
\ No newline at end of file
+} // namespace MantidQt
diff --git a/MantidQt/CustomInterfaces/src/MantidEVWorker.cpp b/MantidQt/CustomInterfaces/src/MantidEVWorker.cpp
index 90ae368360753836c52c12ba8f79b850ab7d53da..2c77df8d14f3200e5769328dbc0682a78e4bebc7 100644
--- a/MantidQt/CustomInterfaces/src/MantidEVWorker.cpp
+++ b/MantidQt/CustomInterfaces/src/MantidEVWorker.cpp
@@ -8,6 +8,8 @@
 #include "MantidAPI/IEventWorkspace.h"
 #include "MantidAPI/IMDWorkspace.h"
 #include "MantidAPI/IPeaksWorkspace.h"
+#include "MantidAPI/Run.h"
+#include "MantidAPI/Sample.h"
 #include "MantidGeometry/Crystal/IPeak.h"
 #include "MantidGeometry/Crystal/OrientedLattice.h"
 #include "MantidKernel/EmptyValues.h"
diff --git a/MantidQt/CustomInterfaces/src/MultiDatasetFit/MDFLogValueFinder.cpp b/MantidQt/CustomInterfaces/src/MultiDatasetFit/MDFLogValueFinder.cpp
index 4451e7ee15a52b59c3613e975c117bcf3eba0437..65a92b9fc7a0fae0567effeb49ff21704de373d0 100644
--- a/MantidQt/CustomInterfaces/src/MultiDatasetFit/MDFLogValueFinder.cpp
+++ b/MantidQt/CustomInterfaces/src/MultiDatasetFit/MDFLogValueFinder.cpp
@@ -1,5 +1,6 @@
 #include "MantidAPI/AnalysisDataService.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidQtCustomInterfaces/MultiDatasetFit/MDFLogValueFinder.h"
 #include <ostream>
 
diff --git a/MantidQt/CustomInterfaces/src/MultiDatasetFit/MultiDatasetFit.cpp b/MantidQt/CustomInterfaces/src/MultiDatasetFit/MultiDatasetFit.cpp
index 920ffb583a63a343941002a9789a4b4c3caa4279..0fa179229e8a56109bb5ef3c09df26257b2efba5 100644
--- a/MantidQt/CustomInterfaces/src/MultiDatasetFit/MultiDatasetFit.cpp
+++ b/MantidQt/CustomInterfaces/src/MultiDatasetFit/MultiDatasetFit.cpp
@@ -8,6 +8,7 @@
 #include "MantidAPI/FunctionFactory.h"
 #include "MantidAPI/ITableWorkspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/TimeSeriesProperty.h"
 
 #include "MantidQtAPI/AlgorithmRunner.h"
diff --git a/MantidQt/CustomInterfaces/src/Muon/ALCDataLoadingPresenter.cpp b/MantidQt/CustomInterfaces/src/Muon/ALCDataLoadingPresenter.cpp
index b260dd3b220a81dcb611172af2887ff1c9ab7005..51cf8c18a0bebb909171a68b6d6b301b3dbee5e6 100644
--- a/MantidQt/CustomInterfaces/src/Muon/ALCDataLoadingPresenter.cpp
+++ b/MantidQt/CustomInterfaces/src/Muon/ALCDataLoadingPresenter.cpp
@@ -2,6 +2,7 @@
 
 #include "MantidAPI/AlgorithmManager.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/Strings.h"
 #include "MantidGeometry/Instrument.h"
 
diff --git a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisFitDataPresenter.cpp b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisFitDataPresenter.cpp
index 31e3949578c4942af3ecc9cabc76ed95901b8e39..9860a424bd36a31420faa28929091987112d206b 100644
--- a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisFitDataPresenter.cpp
+++ b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisFitDataPresenter.cpp
@@ -2,6 +2,7 @@
 #include "MantidAPI/GroupingLoader.h"
 #include "MantidAPI/ITableWorkspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/TableRow.h"
 #include "MantidAPI/Workspace_fwd.h"
 #include "MantidAPI/WorkspaceFactory.h"
diff --git a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisHelper.cpp b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisHelper.cpp
index 429ca32cb50041428e795e218b304bc93056e363..a4ce67ab68ab56df39790e37e381aaa39df0b7fa 100644
--- a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisHelper.cpp
+++ b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisHelper.cpp
@@ -3,6 +3,7 @@
 #include "MantidAPI/AlgorithmManager.h"
 #include "MantidAPI/ITableWorkspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/ScopedWorkspace.h"
 #include "MantidAPI/TableRow.h"
 #include "MantidAPI/WorkspaceGroup.h"
diff --git a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisResultTableCreator.cpp b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisResultTableCreator.cpp
index dfb30a2795edc4b02d449b8883f8853a01b9509d..12ddafb3d2b60d4c02565dc7ec6194f7a5491268 100644
--- a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisResultTableCreator.cpp
+++ b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisResultTableCreator.cpp
@@ -1,6 +1,7 @@
 #include "MantidAPI/AnalysisDataService.h"
 #include "MantidAPI/ExperimentInfo.h"
 #include "MantidAPI/ITableWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/TableRow.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidAPI/WorkspaceGroup.h"
diff --git a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisResultTableTab.cpp b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisResultTableTab.cpp
index 783c91d5fe8126de48e02731ca2b6a00c4ef0b87..f1b63ef0f156067cb38f354b217b4b32072c9de6 100644
--- a/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisResultTableTab.cpp
+++ b/MantidQt/CustomInterfaces/src/Muon/MuonAnalysisResultTableTab.cpp
@@ -1,10 +1,8 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
 #include "MantidQtCustomInterfaces/Muon/MuonAnalysisResultTableTab.h"
 #include "MantidAPI/ExperimentInfo.h"
 #include "MantidAPI/ITableWorkspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidAPI/TableRow.h"
 #include "MantidKernel/ConfigService.h"
@@ -27,8 +25,6 @@
 
 #include <algorithm>
 
-//-----------------------------------------------------------------------------
-
 namespace MantidQt {
 namespace CustomInterfaces {
 namespace Muon {
diff --git a/MantidQt/CustomInterfaces/src/Reflectometry/ReflNexusMeasurementItemSource.cpp b/MantidQt/CustomInterfaces/src/Reflectometry/ReflNexusMeasurementItemSource.cpp
index c826a53602a30e10f9edd29b2fa989fb43b988db..25787d49a8eccdd780ef7c2924dcc1a94d282010 100644
--- a/MantidQt/CustomInterfaces/src/Reflectometry/ReflNexusMeasurementItemSource.cpp
+++ b/MantidQt/CustomInterfaces/src/Reflectometry/ReflNexusMeasurementItemSource.cpp
@@ -1,10 +1,10 @@
-
 #include "MantidQtCustomInterfaces/Reflectometry/ReflNexusMeasurementItemSource.h"
 #include <Poco/File.h>
 #include <Poco/Exception.h>
 #include "MantidAPI/AlgorithmManager.h"
 #include "MantidAPI/Workspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidKernel/TimeSeriesProperty.h"
 #include <iostream>
@@ -18,12 +18,10 @@ using namespace Mantid::Kernel;
 namespace MantidQt {
 namespace CustomInterfaces {
 
-//----------------------------------------------------------------------------------------------
 /** Constructor
  */
 ReflNexusMeasurementItemSource::ReflNexusMeasurementItemSource() {}
 
-//----------------------------------------------------------------------------------------------
 /** Destructor
  */
 ReflNexusMeasurementItemSource::~ReflNexusMeasurementItemSource() {}
diff --git a/MantidQt/CustomInterfaces/src/SANSRunWindow.cpp b/MantidQt/CustomInterfaces/src/SANSRunWindow.cpp
index 3a4ed70dc136370e2c752664adb4ed2ac45caa20..03850850be01ad684900e9b004d30c7c0d7a2164 100644
--- a/MantidQt/CustomInterfaces/src/SANSRunWindow.cpp
+++ b/MantidQt/CustomInterfaces/src/SANSRunWindow.cpp
@@ -1,6 +1,3 @@
-//----------------------
-// Includes
-//----------------------
 #include "MantidQtCustomInterfaces/SANSRunWindow.h"
 
 #include "MantidKernel/ConfigService.h"
@@ -16,6 +13,7 @@
 #include "MantidAPI/AnalysisDataService.h"
 #include "MantidAPI/IAlgorithm.h"
 #include "MantidAPI/IEventWorkspace.h"
+#include "MantidAPI/Sample.h"
 #include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceGroup.h"
 
diff --git a/MantidQt/CustomInterfaces/src/StepScan.cpp b/MantidQt/CustomInterfaces/src/StepScan.cpp
index dd6701a6c5003a3e3ea4901d15ed661faf03a5f9..f1d7f4108dc1b6197a93289e1235750b0ef0f93c 100644
--- a/MantidQt/CustomInterfaces/src/StepScan.cpp
+++ b/MantidQt/CustomInterfaces/src/StepScan.cpp
@@ -1,11 +1,9 @@
-//----------------------
-// Includes
-//----------------------
 #include "MantidQtCustomInterfaces/StepScan.h"
 #include "MantidAPI/AlgorithmManager.h"
 #include "MantidAPI/IEventWorkspace.h"
 #include "MantidAPI/InstrumentDataService.h"
 #include "MantidAPI/LiveListenerFactory.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/InstrumentInfo.h"
 #include "MantidKernel/TimeSeriesProperty.h"
 #include <QFileInfo>
diff --git a/MantidQt/CustomInterfaces/src/Tomography/ImageROIViewQtWidget.cpp b/MantidQt/CustomInterfaces/src/Tomography/ImageROIViewQtWidget.cpp
index 278d831abad2a90fc29aeefcdc260f3b1b61ae85..c5b1c5e74f746821c4527e118a05399f27653961 100644
--- a/MantidQt/CustomInterfaces/src/Tomography/ImageROIViewQtWidget.cpp
+++ b/MantidQt/CustomInterfaces/src/Tomography/ImageROIViewQtWidget.cpp
@@ -1,4 +1,5 @@
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceGroup.h"
 #include "MantidKernel/ConfigService.h"
 #include "MantidQtAPI/AlgorithmInputHistory.h"
diff --git a/MantidQt/CustomInterfaces/src/Tomography/TomographyIfaceViewQtGUI.cpp b/MantidQt/CustomInterfaces/src/Tomography/TomographyIfaceViewQtGUI.cpp
index e64e183c24b4f91d7f68bb49d242f68fb67d053a..796fd818a02689dee91333b3415ac622843a7573 100644
--- a/MantidQt/CustomInterfaces/src/Tomography/TomographyIfaceViewQtGUI.cpp
+++ b/MantidQt/CustomInterfaces/src/Tomography/TomographyIfaceViewQtGUI.cpp
@@ -1,6 +1,7 @@
 #include "MantidAPI/AlgorithmManager.h"
 #include "MantidAPI/MatrixWorkspace.h"
 #include "MantidAPI/ITableWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidQtAPI/AlgorithmInputHistory.h"
 
diff --git a/MantidQt/MantidWidgets/src/InstrumentView/InstrumentWidgetPickTab.cpp b/MantidQt/MantidWidgets/src/InstrumentView/InstrumentWidgetPickTab.cpp
index f604ed4bc0bd01e29a4b60a062cf91b49ac36be6..85129cfb59f61435f50ba7faf8a6fe3b4d86b048 100644
--- a/MantidQt/MantidWidgets/src/InstrumentView/InstrumentWidgetPickTab.cpp
+++ b/MantidQt/MantidWidgets/src/InstrumentView/InstrumentWidgetPickTab.cpp
@@ -17,6 +17,7 @@
 #include "MantidAPI/ITableWorkspace.h"
 #include "MantidAPI/IPeaksWorkspace.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Sample.h"
 #include "MantidAPI/WorkspaceFactory.h"
 #include "MantidAPI/TableRow.h"
 #include "MantidAPI/FrameworkManager.h"
diff --git a/MantidQt/MantidWidgets/src/SequentialFitDialog.cpp b/MantidQt/MantidWidgets/src/SequentialFitDialog.cpp
index e671d4881d5493029c12b9cbf025e59c12186afa..58ff125c81648576814c4e7703419355136e624c 100644
--- a/MantidQt/MantidWidgets/src/SequentialFitDialog.cpp
+++ b/MantidQt/MantidWidgets/src/SequentialFitDialog.cpp
@@ -1,7 +1,3 @@
-//---------------------------------------
-// Includes
-//---------------------------------------
-
 #include "MantidQtMantidWidgets/SequentialFitDialog.h"
 #include "MantidQtMantidWidgets/FitPropertyBrowser.h"
 #include "MantidQtMantidWidgets/SelectWorkspacesDialog.h"
@@ -10,6 +6,7 @@
 #include "MantidAPI/CompositeFunction.h"
 #include "MantidAPI/CompositeFunction.h"
 #include "MantidAPI/MatrixWorkspace.h"
+#include "MantidAPI/Run.h"
 #include "MantidKernel/TimeSeriesProperty.h"
 #include "MantidKernel/ConfigService.h"
 
@@ -21,10 +18,6 @@
 #include <QDesktopServices>
 #include <QUrl>
 
-//---------------------------------------
-// Public member functions
-//---------------------------------------
-
 namespace MantidQt {
 namespace MantidWidgets {
 
diff --git a/MantidQt/SliceViewer/src/ConcretePeaksPresenter.cpp b/MantidQt/SliceViewer/src/ConcretePeaksPresenter.cpp
index f83fb8f7bdb1d0ff4c41fbfc3ccdcef063aec455..f4853f6d04b2db3bfeb2fd99e8e95b14eca077ab 100644
--- a/MantidQt/SliceViewer/src/ConcretePeaksPresenter.cpp
+++ b/MantidQt/SliceViewer/src/ConcretePeaksPresenter.cpp
@@ -11,6 +11,7 @@
 #include "MantidAPI/IMDWorkspace.h"
 #include "MantidAPI/AlgorithmManager.h"
 #include "MantidAPI/IAlgorithm.h"
+#include "MantidAPI/Sample.h"
 #include "MantidGeometry/MDGeometry/IMDDimension.h"
 #include "MantidKernel/Logger.h"
 #include <boost/scoped_ptr.hpp>