Fix that can not set hwtimer again in callback
Fix: thread can not be activated when a thread exit
Use PendSV instead of SVC to handle context switch
Move save and restore context from header to c file
Cleanup include/cpu.h
Cleanup: cpu.c
Fix coding style