dockerinit: unmount socket directory
dockerinit: goodbye Ghost state

Now that we can always reconnect to dockerinit to connect to the console
and wait for the exit code, the Ghost state can go bye bye.
dockerinit: machine container support

Detect when the app is a "machine container" with its own init process.
In this case, since upstart and systemd require running as PID 1, the
original dockerinit will have to "fork" a child long-running dockerinit
before exec-ing the real init.
remove pid from container state

Don't store the pid since nobody is using it.
container: make Start asynchronous again

Remove the code in Start that makes sure the container is really running
before returning.  It's quite hackish and unnecessary.  With the
dockerinit code and the rpc/pty locks there should hopefully not be any
race conditions in the start path.