This commit starts a big refactor to the original debugger PR by merryhime. The debugger now interfaces with KThreads instead of the ExecutionContext.
The corresponding KThread debug functions properly suspend/resume the thread and call the underlying debug related function in the ExecutionContext.
I also added debugging support to the AppleHV ExecutionContext.