Fix paging #PF, simplify init_tasks

Unsure what fixed the paging #PF in init_tasks, but allocating a page
now works as expected. Originally a #PF would occur if alloc_page was
called after a certain point in init_tasks.
diff --git a/src/kernel/x86_32/paging.h b/src/kernel/x86_32/paging.h
index e264356..c06b3a2 100644
--- a/src/kernel/x86_32/paging.h
+++ b/src/kernel/x86_32/paging.h
@@ -11,13 +11,19 @@
 /* defined in switch_table.s */
 extern uint load_page_directory(uint table_address);
 extern void enable_paging();
+extern void invalidate_page(void *address);
 extern uint kernel_page_directory[1024];
 
 void init_paging();
 
 void map_page_to(uint *dir, void *virt, void *frame_p, bool writable, bool user);
 void alloc_frame(uint *page_table_entry, bool user, bool writable);
+
+/* Map the 4kb of virtual memory starting at `page` to a physical page
+ * in the page directory `dir` (pointer to page directory in virtual
+ * memory) */
 void alloc_page(uint *dir, uint *page);
 void alloc_kernel_page(uint *page);
-void page_fault(struct registers *regs);
 uint *new_page_directory_v();
+
+void test_paging();