diff --git a/src/cell.c b/src/cell.c
index 737b844d75e777f72d41dcf9841acb9158b0f003..4c0839d16a050b030d8a3c3d131717386fde663c 100644
--- a/src/cell.c
+++ b/src/cell.c
@@ -46,7 +46,6 @@
 #include "lock.h"
 #include "task.h"
 #include "timers.h"
-#include "part.h"
 #include "space.h"
 #include "multipole.h"
 #include "cell.h"
diff --git a/src/cell.h b/src/cell.h
index 78a0c5183fbf709c1801dc5fbc4289f07fc796f9..088acb935a8e5e842441ab0534ec96695d6473e6 100644
--- a/src/cell.h
+++ b/src/cell.h
@@ -19,6 +19,9 @@
 #ifndef SWIFT_CELL_H
 #define SWIFT_CELL_H
 
+/* Includes. */
+#include "part.h"
+
 /* Some constants. */
 #define cell_sid_dt 13
 #define cell_max_tag (1 << 16)
diff --git a/src/common_io.c b/src/common_io.c
index 51ef3bef155d645c97c0a3332cedfe80bf5222dc..10f66f053152871a2a81ca5a2663573918bd33d6 100644
--- a/src/common_io.c
+++ b/src/common_io.c
@@ -38,7 +38,6 @@
 #include "cycle.h"
 #include "lock.h"
 #include "task.h"
-#include "part.h"
 #include "space.h"
 #include "scheduler.h"
 #include "engine.h"
diff --git a/src/debug.c b/src/debug.c
index 2ad84173609554d5e0c7e5dfc28c31dc3f91ff8d..32ddb6816bf3ded696721c8d88a6b9a8d8f2e6b5 100644
--- a/src/debug.c
+++ b/src/debug.c
@@ -21,7 +21,6 @@
 #include <stdio.h>
 
 #include "const.h"
-#include "part.h"
 #include "lock.h"
 #include "multipole.h"
 #include "space.h"
diff --git a/src/debug.h b/src/debug.h
index 6e8e95df0420f668319f119caf9463756e0e7f5d..7cdb5c78c697bcb9f632a85af808563b858a8c8b 100644
--- a/src/debug.h
+++ b/src/debug.h
@@ -19,6 +19,9 @@
 #ifndef SWIFT_DEBUG_H
 #define SWIFT_DEBUG_H
 
+/* Includes. */
+#include "part.h"
+
 void print_cell(struct cell *c);
 void printParticle(struct part *parts, long long int i, int N);
 void printgParticle(struct gpart *parts, long long int i, int N);
diff --git a/src/engine.c b/src/engine.c
index 2ebab0dcaf1d9130ace1b30be3ac5d2205880984..99735a83e7df3011439b0c90b45f7f66e5ceee73 100644
--- a/src/engine.c
+++ b/src/engine.c
@@ -51,7 +51,6 @@
 #include "vector.h"
 #include "lock.h"
 #include "task.h"
-#include "part.h"
 #include "debug.h"
 #include "space.h"
 #include "multipole.h"
diff --git a/src/multipole.c b/src/multipole.c
index 829882918fdc64e5b43591fbff799163e4be76e9..bf3d77cf8feba7d965bad4128306ad7ba9b5797d 100644
--- a/src/multipole.c
+++ b/src/multipole.c
@@ -40,7 +40,6 @@
 #include "atomic.h"
 #include "lock.h"
 #include "space.h"
-#include "part.h"
 #include "multipole.h"
 #include "cell.h"
 
diff --git a/src/multipole.h b/src/multipole.h
index 03dd0c4a104acd3360cdbd8426944047a8891192..42b78bd6177b13049a3d6266672fe300b5be6a31 100644
--- a/src/multipole.h
+++ b/src/multipole.h
@@ -19,6 +19,9 @@
 #ifndef SWIFT_MULTIPOLE_H
 #define SWIFT_MULTIPOLE_H
 
+/* Includes. */
+#include "part.h"
+
 /* Some constants. */
 #define multipole_order 1
 
diff --git a/src/parallel_io.c b/src/parallel_io.c
index a0a4c66b035157861b2865d9f45361b2064ab36d..beab80b880743da8f9afe5bbace4520006601f2d 100644
--- a/src/parallel_io.c
+++ b/src/parallel_io.c
@@ -39,7 +39,6 @@
 #include "cycle.h"
 #include "lock.h"
 #include "task.h"
-#include "part.h"
 #include "space.h"
 #include "scheduler.h"
 #include "engine.h"
diff --git a/src/parallel_io.h b/src/parallel_io.h
index 3096e5a1ba686b084ea49a60866c3aba9ad0e806..035f94c336f55e632faa044ecd4f5de20d445187 100644
--- a/src/parallel_io.h
+++ b/src/parallel_io.h
@@ -19,6 +19,9 @@
 #ifndef SWIFT_PARALLEL_IO_H
 #define SWIFT_PARALLEL_IO_H
 
+/* Includes. */
+#include "part.h"
+
 #if defined(HAVE_HDF5) && defined(WITH_MPI) && defined(HAVE_PARALLEL_HDF5)
 
 void read_ic_parallel(char* fileName, double dim[3], struct part** parts,
diff --git a/src/part.h b/src/part.h
index e9e61c617d2804772dd7d3337ff379c0796c6d2a..380c2dedb2d7847c0d0efe937d0b24feb0a736f0 100644
--- a/src/part.h
+++ b/src/part.h
@@ -16,7 +16,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  ******************************************************************************/
-#ifndef SIWFT_PART_H
+#ifndef SWIFT_PART_H
 #define SWIFT_PART_H
 
 /* Some constants. */
diff --git a/src/proxy.c b/src/proxy.c
index 9153ad85a07d985bd35dae80ac067d9d8b5f75be..3616d054333f5654308f0d034b704fd77b80fff1 100644
--- a/src/proxy.c
+++ b/src/proxy.c
@@ -46,7 +46,6 @@
 #include "vector.h"
 #include "lock.h"
 #include "space.h"
-#include "part.h"
 #include "multipole.h"
 #include "cell.h"
 #include "task.h"
diff --git a/src/proxy.h b/src/proxy.h
index 20e05bc07247a4d82e6c606d4c458c2ad580434c..afdd004f912c8cbef03fb865746652090b6cd2b6 100644
--- a/src/proxy.h
+++ b/src/proxy.h
@@ -19,6 +19,9 @@
 #ifndef SWIFT_PROXY_H
 #define SWIFT_PROXY_H
 
+/* Includes. */
+#include "part.h"
+
 /* Some constants. */
 #define proxy_buffgrow 1.5
 #define proxy_buffinit 100
diff --git a/src/queue.c b/src/queue.c
index 0cdfc34108f3c11ffb2d4a0c8a64bd1a3c949ecf..945c300f546a1a6faa8200f6c43aa8acf22f9879 100644
--- a/src/queue.c
+++ b/src/queue.c
@@ -37,7 +37,6 @@
 #include "task.h"
 #include "timers.h"
 #include "space.h"
-#include "part.h"
 #include "multipole.h"
 #include "cell.h"
 #include "queue.h"
diff --git a/src/runner.c b/src/runner.c
index 7ec7899432dcadcfdd4a07c8df22c803c0ef50e3..28d5c78f52c2158a0e7186e535de00dfe7b47298 100644
--- a/src/runner.c
+++ b/src/runner.c
@@ -43,7 +43,6 @@
 #include "const.h"
 #include "lock.h"
 #include "task.h"
-#include "part.h"
 #include "space.h"
 #include "multipole.h"
 #include "cell.h"
diff --git a/src/runner_doiact.h b/src/runner_doiact.h
index a9d96490a3987750a22fbc8b7989785712541feb..3c6a732af14d1befe3c635127fcfe12cc9e4c180 100644
--- a/src/runner_doiact.h
+++ b/src/runner_doiact.h
@@ -17,6 +17,9 @@
  *
  ******************************************************************************/
 
+/* Includes. */
+#include "part.h"
+
 /* Before including this file, define FUNCTION, which is the
    name of the interaction function. This creates the interaction functions
    runner_dopair_FUNCTION, runner_dopair_FUNCTION_naive, runner_doself_FUNCTION,
diff --git a/src/runner_iact.h b/src/runner_iact.h
index d1de59afc899c8e1d3c107e3f97466bdc2b1a520..747208afc1c547b1469a980d57e9987d30cbd57f 100644
--- a/src/runner_iact.h
+++ b/src/runner_iact.h
@@ -20,6 +20,8 @@
 #ifndef SWIFT_RUNNER_IACT_H
 #define SWIFT_RUNNER_IACT_H
 
+/* Includes. */
+#include "part.h"
 #include "kernel.h"
 #include "vector.h"
 
diff --git a/src/runner_iact_legacy.h b/src/runner_iact_legacy.h
index f098b3d56e0a97c475395c93a9117b4f7197cd33..5b42c6de7ffee5e8dee7c3d91a5bbb65c716bfc9 100644
--- a/src/runner_iact_legacy.h
+++ b/src/runner_iact_legacy.h
@@ -20,6 +20,8 @@
 #ifndef SWIFT_RUNNER_IACT_LEGACY_H
 #define SWIFT_RUNNER_IACT_LECAGY_H
 
+/* Includes. */
+#include "part.h"
 #include "kernel.h"
 #include "vector.h"
 
diff --git a/src/scheduler.c b/src/scheduler.c
index 658e587b16f4a954b8e0a4a4ebc0c8b8ee847e4e..fa6b3db5481959e2a37ff2bf76407346e112c7ce 100644
--- a/src/scheduler.c
+++ b/src/scheduler.c
@@ -43,7 +43,6 @@
 #include "vector.h"
 #include "lock.h"
 #include "task.h"
-#include "part.h"
 #include "debug.h"
 #include "space.h"
 #include "multipole.h"
diff --git a/src/serial_io.c b/src/serial_io.c
index a86dcbc9e6f039cbf43632c882929ed20581c2a2..89b6c1583a2949651c27a8d7cc60c7a285a08a39 100644
--- a/src/serial_io.c
+++ b/src/serial_io.c
@@ -37,7 +37,6 @@
 #include "cycle.h"
 #include "lock.h"
 #include "task.h"
-#include "part.h"
 #include "space.h"
 #include "scheduler.h"
 #include "engine.h"
diff --git a/src/serial_io.h b/src/serial_io.h
index 6f28b56c957240a36a23fc8179bf72a95d21a2da..3344c0dab319a1dcedb4ef32473064d9955e645a 100644
--- a/src/serial_io.h
+++ b/src/serial_io.h
@@ -19,6 +19,9 @@
 #ifndef SWIFT_SERIAL_IO_H
 #define SWIFT_SERIAL_IO_H
 
+/* Includes. */
+#include "part.h"
+
 #if defined(HAVE_HDF5) && defined(WITH_MPI) && !defined(HAVE_PARALLEL_HDF5)
 
 void read_ic_serial(char* fileName, double dim[3], struct part** parts, int* N,
diff --git a/src/single_io.c b/src/single_io.c
index 449980cd519ca1c8a42977842a870a6fef31d9e7..cfcafc53df35beed330cb84a073f437193eb5122 100644
--- a/src/single_io.c
+++ b/src/single_io.c
@@ -35,7 +35,6 @@
 #include "cycle.h"
 #include "lock.h"
 #include "task.h"
-#include "part.h"
 #include "space.h"
 #include "scheduler.h"
 #include "engine.h"
diff --git a/src/space.c b/src/space.c
index 14bf75b744b0936a54b83e165623b327675b996c..308c881ee67bf3dd116a08c7f8cc0a60b7f5da95 100644
--- a/src/space.c
+++ b/src/space.c
@@ -42,7 +42,6 @@
 #include "lock.h"
 #include "task.h"
 #include "kernel.h"
-#include "part.h"
 #include "space.h"
 #include "multipole.h"
 #include "cell.h"
diff --git a/src/space.h b/src/space.h
index e6770333f3b30e655052b1c799751b4420283433..85bb93de6e90beb92105b77156b90898267745a3 100644
--- a/src/space.h
+++ b/src/space.h
@@ -19,6 +19,9 @@
 #ifndef SWIFT_SPACE_H
 #define SWIFT_SPACE_H
 
+/* Includes. */
+#include "part.h"
+
 /* Some constants. */
 #define space_maxdepth 10
 #define space_cellallocchunk 1000
diff --git a/src/task.c b/src/task.c
index 897914a84fe0a2f4357a917237a761b432675d16..52b25e9498901186f7bfeba05abe67883a9ac012 100644
--- a/src/task.c
+++ b/src/task.c
@@ -42,7 +42,6 @@
 #include "atomic.h"
 #include "lock.h"
 #include "space.h"
-#include "part.h"
 #include "multipole.h"
 #include "cell.h"
 #include "task.h"
diff --git a/src/units.c b/src/units.c
index 2efcfaa5104c9ea251f3fe9e42f1413014f7d6f9..ed16f259f1de82a86448646ef886ba838e889e85 100644
--- a/src/units.c
+++ b/src/units.c
@@ -32,7 +32,6 @@
 
 #include "const.h"
 #include "cycle.h"
-#include "part.h"
 #include "error.h"
 #include "units.h"