exit gracefully when running without args