add upgrade functionality
fix main exit points
add new line after each result/error
print progress to stderr