process: rethink how the ticker works

Everything in processNextTick is going to be called a lot. It should be
written in a way that allows it to be inlined. First change here is
working out how to remove the .splice() calls.

I'm looking for feedback on how to get this sucker working. Basically instead of keeping track of queues within a single large array, I have an array of array queues and keep a pointer to the current one. This is better only because `splice` is super costly and doesn't allow v8 to optimize the function near as well.

Also you'll notice that I've removed the `domain` stuff. Those calls are causing massive `DEOPT` bailouts. Off of the gimp version here, along with @isaacs GH-4686, there's about a 20% increase in performance.

Anyways, the basic goal is to get this whole section inline-able.