Ability to run the pre-upgrade script without respawning the processes

Some apps are not cool with multiple processes and zero-downtime deploy does not work.  

This adds the ability to run the pre-upgrade script without actually upgrading.  Then you can do a restart.

command line usage example:
```
liveswap -f 1 -s ./run.js --pre-upgrade ./pre-upgrade.js  # start
liveswap --preupgrade                                     # run pre-upgrade script
liveswap -k                                               # restart
```

or programmatically:
```
// upgrade without zero-downtime
client.preupgrade({
  host: host
}, function(err) {
  if (err) return
  client.kill() // should we rename this to restart()?
})
```