got priority working. it is non-preemptive, so if you are on something
that was assigned a higher priority, it will finish that task before
then switching to lowest priority... that only happens if you are mean
enough to type "setschedule priority" while it is running. I am sure
there are some bugs in the code -- and there is a lot of stuff I do not
like... However, with all requirements met ... it is time to walk
through file by file and make my comments and adjustments. I will then
test it and if time allows, I will go back and make some better design
choices.

1 major design change could be how we move the processes around, there
seems to not be one major driving mechanisim there and there really
should be... like maybe contextSwitch or something... If you really skim
the code closly you can find my bandaids. I tried to admit to them when
possible.

Oh and I never pushed a class called File.ts and File.js there are
simply a way to abstract the files... I keep an array of files to allow
for easy and faster lookup. Now I can always add to this file object if
I wanted to keep track of something else.