Fix: Process will now exit if no servers are started after `run`
Fix: Process will now exit if no servers are started after `run`

In the blocking version, the process would live as long as a server
loop was running. Since the non-blocking version doesn’t use loops, a
`DispatchQueue` was used to keep the process alive when a `run` command
was issued. However, some `run` commands don’t start servers and are
expected to exit. This patch fixes that.

vapor/vapor,vapor/vapor,qutheory/vapor,qutheory/vapor,qutheory/vapor,vapor/vapor,vapor/vapor