Fix #3370
Issue #2641
* introduce new syscall (core-only) to create privileged threads * take the privilege level of the thread into account when doing a context switch * map kernel segment as accessable for privileged code only Ref #2091
* Introduce Hw namespace and library files under src/lib/hw * Introduce Bootstrap namespace * Move all initialization logic into Bootstrap namespace Ref #2388