Restructured cli argument parsing.