Refactor: Replace macros with enum class modes
Refactor: Rename modes to remove unnecessary MODE_ prefix
Refactor: Remove unnecessary number values on enum declaration
Refactor: Replace char array with std::string fname1
Refactor: Replace char array with std::string fname2
Refactor: Replace char array with std::string swappath
Refactor: Localize variable
Refactor: Replace function with function object compiler
Refactor: Extract method parse_arguments
Refactor: Replace malloc with std::vector buffer