Add zero-downtime restarts

## Example

See [fatum/goliath-zero-downtime](https://github.com/fatum/goliath-zero-downtime) project

## How it works?

Einhorn came about when Stripe was investigating seamless code upgrading solutions for our API worker processes. We really liked the process model of Unicorn, but didn't want to use its HTTP functionality. So Einhorn was born, providing the master process functionality of Unicorn (and similar preforking servers) to a wider array of applications.

See https://stripe.com/blog/meet-einhorn for more background.