usage() if no program given
handle error 'cannot start executable'
improved usage