Factorizes 'kernel_scheduler_handler' code.
Implements 'kernel_scheduler_yield'.
Begins implementation of 'kernel_pcb_sleep'.
Splits 'kernel_pcb' module into 'kernel_pcb' and 'kernel_pcb_turnstile'.
Renames some functions in 'kernel_pcb_turnstile' module.
Implements 'kernel_pcb_turnstile_sorted_insert'.
Lets 'kernel_scheduler_init' initialize new 'kernel_turnstile_sleeping'.
Completes implementation of 'kernel_pcb_sleep'.
Implements 'kernel_pcb_turnstile_popfront'.
Wakes up sleeping processes in 'kernel_scheduler_elect'.
Implements 'api_process_sleep'.
Corrects few bugs about new passive sleep feature.
Reorganizes 'pdfs' folder into 'doc'.
Makefile: Uses MAKEINCDIR variable eveywhere and moves linker script.
Merge branch 'compilation' into dev
Fixes spelling mistake in constant name in 'kernel/arm.h'.
Fixes a bug in 'kernel_scheduler_yield' causing loss of r0.
Merge branch 'dev' into 'master' bringing working passive sleep!