added self check
removing undetermined error class (these are now general errors and return 1)
added download and unpack functions
updated help messages
now checking data only if it is needed or if no other actions are specified