Modified scheduling function naming scheme

Swapped schdule<->spawn functions so it makes more sense to me.
Added more stupid fault handlers
Removed halt loop in kmain
Added support for kernel threads and yield function