catch errors everywhere
handle args better
re-connect syslog