Rewrote logging output logic

Instead of manually check each argument, the log now introspects on ArgumentParser object