diff --git a/src/Persefone.jl b/src/Persefone.jl
index 15a33b6158f65aa54689a2b554dcc06d0b0eef45..4e1c38e054ae48c43299d8d3056e14fadb5911a6 100644
--- a/src/Persefone.jl
+++ b/src/Persefone.jl
@@ -52,27 +52,37 @@ export
     Farmer,
     DataOutput,
     SimulationModel,
+    AgricultureModel,
     #macros
     @param,
+    @rand,
+    @shuffle!,
     @species,
-    @initialise,
+    @populate,
+    @create,
     @phase,
-    @trait,
+    @animal,
+    @isalive,
+    @here,
     @setphase,
     @respond,
-    @here,
     @kill,
+    @killother,
     @reproduce,
-    @neighbours,
+    @migrate,
     @habitat,
     @landcover,
-    @cropheight,
     @cropname,
+    @cropheight,
+    @directionto,
     @distanceto,
     @distancetoedge,
-    @countanimals,
-    @rand,
-    @shuffle!,
+    @randompixel,
+    @randomdirection,
+    @neighbours,
+    @move,
+    @walk,
+    @follow,
     #functions
     simulate,
     simulate!,
@@ -133,7 +143,7 @@ include("nature/species/wyvern.jl")
 
 include("core/simulation.jl") #this must be last
 
-# precompile important functions
+# precompile important functions - XXX use PrecompileTools.jl
 precompile(initialise, (String,Int))
 precompile(stepsimulation!, (SimulationModel,))