improved go-update's API by separating out a function for downloading as well as downloading and updating. added a function which simply checks if an update is available but does not try to apply it. added a pre-update sanity check which verifies permissions are correct
close progress channel in GetAndUpdate() if sanity check fails
stop getandupdate if there's no update available