Fix JMK bug, update architecture docs
diff --git a/include/kernel/task.h b/include/kernel/task.h
index 487c143..87b412b 100644
--- a/include/kernel/task.h
+++ b/include/kernel/task.h
@@ -48,7 +48,11 @@
 // For compatibility I guess
 #define getpid get_process_id
 
-void spawn_thread(void (*function)(void *), void *data);
+typedef void (*task_function_t)(void *data);
+
+#define TASK_FUNCTION(f) ((task_function_t)(f))
+
+void spawn_thread(task_function_t function, void *data);
 void kill_this_thread();
 extern void switch_task();
 void switch_to_task(struct task *task);