refactor Parsing classes and CLI arguments