add license header
move most of the stuff out of __main__
improve updateall to handle all/eol/non-eol hardware instead of only all