use go-update, and other update cleanup

Make builds not named "hk" work successfully with updates, such as staging builds named "hkstaging".

Also switch from custom self-updating code to go-update. Currently, it's just handling the "update the current executable with these bytes and clean up afterwards" bit. Would love to eventually use a single package to handle bsdiff updates and checksum verification as [we currently do ourselves](https://github.com/heroku/hk/blob/bee5bb0017d0cc3d2e0c1eb6a3ddbf5e246cb516/update.go). Maybe @inconshreveable has thoughts on bringing some of that stuff into go-update.