* bugfix: use os.IsNotExist() instead of comparing errors for equality;
this fixes incorrect handling of missing authorized_keys file.
* move die() and warn() into die.go - and make them public functions.
* teach die.go to also provide atexit() like functionality
* teach all callers of sign.SafeFile{} to use AtExit() to delete
temporary artifacts
* symbol renaming: die->Die, warn->Warn.