Add post-init hook for workers

Allows a config specifying a function after a worker has been initialized and before the run loop

Changes for #554


Allows for a hook like 
```
import socket
import time

def _send_udp(message):

    udp_ip = "127.0.0.1"
    udp_port = 4012

    sock = socket.socket(socket.AF_INET, # Internet
                         socket.SOCK_DGRAM) # UDP
    sock.sendto(message, (udp_ip, udp_port))

def post_init(worker):
    _send_udp('OK\n')
```

and a restart script like 
```
echo 'Killing children of ' $1;

children=$(pgrep -P $1)
for child in $children
do
    echo 'Killing' $child
    kill $child
    response=$(timeout 60 nc -w 0 -ul 4012)
    if [ "$response" != 'OK' ]; then
        echo 'BROKEN'
        exit 1;
    fi
done
```