first pass of parallelization

[Do not merge]

first pass of adding parallelization

* adding hooks for before.batch and after.batch   (think I should rename to before.fork and after.hook)

but with these hooks the implementer can set up there forked process.  I also set a world.port_number for the implementer to use that to setup webservers and other resources specifically to each fork.