After thinking about the structure of the project, I have decided to focus on the boilerplate code at first, then implement the meat. This way, the code won't need to be constantly re-organized. I removed the command line parser in favor of a (TBI) GUI-only setup.