Remove main and System.out
Improve migration dispatching

Execute local migrations immediately
Add processing pools to queue handling

Scheduling actions are sent to the specific scheduler which is responsible for
the processing pool the check is assigned too.

Results are routed to the specific result processor which is responsible for
the processing pool the check is assigned too.  In the event a result cannot
be routed to the specific result processor, it will fallback to a global queue
which is consumed by all result processors.