irq: threads: fixed a nasty build problem

Fixed a nasty build problem between the IRQ, threading and time header,
which cause the CPP to go completely nuts.

Fix:

Moved tm_process_source from the time.h header to the time.c source
file. Causing it to become a public function and no longer a static
inline header function.

Signed-off-by: Michel Megens <dev@michelmegens.net>
sched: added the rq and sched_class structures

RQ:
rq stands for 'run queue'. It contains all runnable threads for a
given CPU. Each active CPU should have a run queue initialised during
the boot process.

sched_class:
The sched_class data structure describes the scheduling algorithm. How
threads are ordered, removed, and added to run queue's.

Signed-off-by: Michel Megens <dev@michelmegens.net>