hardware: add sexy argparse + a lot of fixes...

commit late, commit rarely