Draft Task Class
Begin svc handling.
Got task switching working.
Minor cleanup.
Merge branch 'develop' into feature/tasks
Introduce RunningQueue to change it without changing the currenttask variable (which would not be possible).
Priority Round Robin bases scheduling seems to work.
Removed uneeded initial task switch, as it would terminate early because it's the only task running.
Always enable interrupts when switching a task
Added waitables the low level construct for waiting on resources.
Waitables now have internal delegates for when the wait begin/ends.
Move task test code to main. Fixed scheduling issues.
Implemented semaphore. Fixed bug with premature waitabort.
Semaphore is now a proper class and has a proper Constructor.
Moved Task, Waitable, Semaphore into Schedule
Added simple mutex implementation.
Add flag.