diff --git a/src/DataSet/DataSetSerialization.h b/src/DataSet/DataSetSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..7e9e1b7582054e666cbd0c2f46cb080d36139ecf
--- /dev/null
+++ b/src/DataSet/DataSetSerialization.h
@@ -0,0 +1,8 @@
+//
+// Created by martin on 9/18/18.
+//
+
+#ifndef LIB4NEURO_DATASETSERIALIZATION_H
+#define LIB4NEURO_DATASETSERIALIZATION_H
+
+#endif //LIB4NEURO_DATASETSERIALIZATION_H
diff --git a/src/General/ExprtkWrapperSerialization.h b/src/General/ExprtkWrapperSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..f53535a036170aec3102964ff7c29c01eeec1b6a
--- /dev/null
+++ b/src/General/ExprtkWrapperSerialization.h
@@ -0,0 +1,8 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_EXPRTKWRAPPERSERIALIZATION_H
+#define LIB4NEURO_EXPRTKWRAPPERSERIALIZATION_H
+
+#endif //LIB4NEURO_EXPRTKWRAPPERSERIALIZATION_H
diff --git a/src/NetConnection/ConnectionFunctionGeneralSerialization.h b/src/NetConnection/ConnectionFunctionGeneralSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..f0be815e8147651a98b7672bcefac38781810f0e
--- /dev/null
+++ b/src/NetConnection/ConnectionFunctionGeneralSerialization.h
@@ -0,0 +1,8 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_CONNECTIONFUNCTIONGENERALSERIALIZATION_H
+#define LIB4NEURO_CONNECTIONFUNCTIONGENERALSERIALIZATION_H
+
+#endif //LIB4NEURO_CONNECTIONFUNCTIONGENERALSERIALIZATION_H
diff --git a/src/NetConnection/ConnectionFunctionIdentitySerialization.h b/src/NetConnection/ConnectionFunctionIdentitySerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..c5ce994995095acd2ca974f7b78d98e1d8c46f2b
--- /dev/null
+++ b/src/NetConnection/ConnectionFunctionIdentitySerialization.h
@@ -0,0 +1,8 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_CONNECTIONFUNCTIONIDENTITYSERIALIZATION_H
+#define LIB4NEURO_CONNECTIONFUNCTIONIDENTITYSERIALIZATION_H
+
+#endif //LIB4NEURO_CONNECTIONFUNCTIONIDENTITYSERIALIZATION_H
diff --git a/src/Network/NeuralNetworkSerialization.h b/src/Network/NeuralNetworkSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..3683a553217147e48d32b7ed0a804d500feb8937
--- /dev/null
+++ b/src/Network/NeuralNetworkSerialization.h
@@ -0,0 +1,8 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_NEURALNETWORKSERIALIZATION_H
+#define LIB4NEURO_NEURALNETWORKSERIALIZATION_H
+
+#endif //LIB4NEURO_NEURALNETWORKSERIALIZATION_H
diff --git a/src/Network/NeuralNetworkSumSerialization.h b/src/Network/NeuralNetworkSumSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..55a8c76b9067ca4cedf93101f69d9471c7738850
--- /dev/null
+++ b/src/Network/NeuralNetworkSumSerialization.h
@@ -0,0 +1,8 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_NEURALNETWORKSUMSERIALIZATION_H
+#define LIB4NEURO_NEURALNETWORKSUMSERIALIZATION_H
+
+#endif //LIB4NEURO_NEURALNETWORKSUMSERIALIZATION_H
diff --git a/src/Neuron/NeuronBinarySerialization.h b/src/Neuron/NeuronBinarySerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..690c091d69f347a657ccc42acf4df055bdfef4a7
--- /dev/null
+++ b/src/Neuron/NeuronBinarySerialization.h
@@ -0,0 +1,45 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_NEURON_BINARY_SERIALIZATION_H
+#define LIB4NEURO_NEURON_BINARY_SERIALIZATION_H
+
+#include <boost/serialization/base_object.hpp>
+#include <boost/archive/text_oarchive.hpp>
+#include <boost/archive/text_iarchive.hpp>
+#include <boost/serialization/access.hpp>
+#include <boost/serialization/export.hpp>
+
+#include "NeuronBinary.h"
+
+BOOST_CLASS_EXPORT(NeuronBinary);
+
+
+struct NeuronBinary :: access {
+    template <class Archive>
+    static void serialize(Archive &ar, NeuronBinary& n, const unsigned int version) {
+        ar & boost::serialization::base_object<Neuron>(n);
+    }
+};
+
+namespace boost {
+    namespace serialization {
+
+        /**
+         * Serialization function
+         * @tparam Archive Boost library template
+         * @param ar Boost parameter - filled automatically during serialization!
+         * @param n NeuronBinary instance
+         * @param version Boost parameter - filled automatically during serialization!
+         */
+        template<class Archive>
+        void serialize(Archive & ar, NeuronBinary& n, const unsigned int version)
+        {
+            NeuronBinary::access::serialize(ar, n, version);
+        }
+
+    } // namespace serialization
+} // namespace boost
+
+#endif //LIB4NEURO_NEURON_BINARY_SERIALIZATION_H
diff --git a/src/Neuron/NeuronConstantSerialization.h b/src/Neuron/NeuronConstantSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..2ca36194cb962cd0e76c15c770f6e059c8b0f61c
--- /dev/null
+++ b/src/Neuron/NeuronConstantSerialization.h
@@ -0,0 +1,47 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_NEURON_SERIALIZATION_H
+#define LIB4NEURO_NEURON_SERIALIZATION_H
+
+#include <boost/serialization/base_object.hpp>
+#include <boost/archive/text_oarchive.hpp>
+#include <boost/archive/text_iarchive.hpp>
+#include <boost/serialization/export.hpp>
+
+#include "NeuronConstant.h"
+#include "../settings.h"
+#include "Neuron_serialization.h"
+
+BOOST_CLASS_EXPORT(NeuronConstant);
+
+
+struct NeuronConstant :: access {
+    template <class Archive>
+    static void serialize(Archive &ar, NeuronConstant& n, const unsigned int version) {
+        ar & boost::serialization::base_object<Neuron>(n);
+        ar & n.p;
+    }
+};
+
+namespace boost {
+    namespace serialization {
+
+        /**
+         * Serialization function
+         * @tparam Archive Boost library template
+         * @param ar Boost parameter - filled automatically during serialization!
+         * @param n NeuronConstant instance
+         * @param version Boost parameter - filled automatically during serialization!
+         */
+        template<class Archive>
+        void serialize(Archive & ar, NeuronConstant& n, const unsigned int version)
+        {
+            NeuronConstant::access::serialize(ar, n, version);
+        }
+
+    } // namespace serialization
+} // namespace boost
+
+#endif //LIB4NEURO_NEURON_SERIALIZATION_H
diff --git a/src/Neuron/NeuronLinearSerialization.h b/src/Neuron/NeuronLinearSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..e42593831eda12d6c6309c9694d06292e56a893c
--- /dev/null
+++ b/src/Neuron/NeuronLinearSerialization.h
@@ -0,0 +1,8 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_NEURONLINEARSERIALIZATION_H
+#define LIB4NEURO_NEURONLINEARSERIALIZATION_H
+
+#endif //LIB4NEURO_NEURONLINEARSERIALIZATION_H
diff --git a/src/Neuron/NeuronLogisticSerialization.h b/src/Neuron/NeuronLogisticSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..723a362b08bcf8c30ae573816d4413e026d93c85
--- /dev/null
+++ b/src/Neuron/NeuronLogisticSerialization.h
@@ -0,0 +1,8 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_NEURONLOGISTICSERIALIZATION_H
+#define LIB4NEURO_NEURONLOGISTICSERIALIZATION_H
+
+#endif //LIB4NEURO_NEURONLOGISTICSERIALIZATION_H
diff --git a/src/Neuron/NeuronSerialization.h b/src/Neuron/NeuronSerialization.h
new file mode 100644
index 0000000000000000000000000000000000000000..9fe369b95d7b3ce8971392e9b79c9e49cf77b66b
--- /dev/null
+++ b/src/Neuron/NeuronSerialization.h
@@ -0,0 +1,42 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_NEURON_SERIALIZATION_H
+#define LIB4NEURO_NEURON_SERIALIZATION_H
+
+#include <boost/archive/text_oarchive.hpp>
+#include <boost/archive/text_iarchive.hpp>
+#include <boost/serialization/access.hpp>
+#include <boost/serialization/assume_abstract.hpp>
+
+#include "Neuron.h"
+
+BOOST_SERIALIZATION_ASSUME_ABSTRACT(Neuron);
+
+
+struct Neuron :: access {
+    template <class Archive>
+    static void serialize(Archive &ar, Neuron& n, const unsigned int version) {}
+};
+
+namespace boost {
+    namespace serialization {
+
+        /**
+         * Serialization function
+         * @tparam Archive Boost library template
+         * @param ar Boost parameter - filled automatically during serialization!
+         * @param n Neuron instance
+         * @param version Boost parameter - filled automatically during serialization!
+         */
+        template<class Archive>
+        void serialize(Archive & ar, Neuron& n, const unsigned int version)
+        {
+            Neuron::access::serialize(ar, n, version);
+        }
+
+    } // namespace serialization
+} // namespace boost
+
+#endif //LIB4NEURO_NEURON_SERIALIZATION_H
diff --git a/src/exceptions.h b/src/exceptions.h
new file mode 100644
index 0000000000000000000000000000000000000000..0beaf7b4c0f70cf6b1d2b0dc322bce4ec61df1b3
--- /dev/null
+++ b/src/exceptions.h
@@ -0,0 +1,16 @@
+//
+// Created by martin on 9/17/18.
+//
+
+#ifndef LIB4NEURO_EXCEPTIONS_H
+#define LIB4NEURO_EXCEPTIONS_H
+
+//TODO implement NotImplementedException according to C++17
+//class NotImplementedException : public std::logic_error {
+//public:
+//    const char* what() {
+//        return "Function not yet implemented!";
+//    }
+//};
+
+#endif //LIB4NEURO_EXCEPTIONS_H