use libuv to find cpu count

can now initialize the correct number of workers
remove ProcessRoot structure

this thing was kind of unnecessary. this does break channels for a bit
though until they're switched to be stored in variables
reorder CallNode so it's after the call classes

this is a little easier to read and follow now
no code changes, just moving things
rename CodeCall to be FunctionCall

no other code changes, just this rename. Always wanted it to be called
this, but needed to call it something else because there used to be a
different FunctionCall type