boot: Allow launch functions to abort startup

A launch function can now return False to prevent POX from continuing to
start up.

Also, we now run the shutdown code even when _do_launch() returns False,
which may prevent some shutdown hangs.

This code is sort of hacky and shutdown just sort of needs to be
readdressed (e.g., we should probably raise GoingDown, then wait, then
raise Down, etc.).
misc: Add misc.pidfile component

This component helps one to run POX as a service by creating (and deleting)
PID files.