We now have an output file logging main events and an input file with the settings of the simulation. The most important output is still missing, though, namely the evolution of the party system. We would like to be able to open output from the simulation in R, for example, so we can make plots of party sizes over time, etc. Different file formats can be used to store data files. Here we will use CSV files, which are easily accessible in programs like Excel or R, and which can easily be inspected by a text editor, as they are just plain text files. 1. Create a Tracker class for recording statistics in each turn of the simulation and add it to the Simulation class. 2. Add a save_state() function to the Tracker class, which saves information on the current parties' positions and vote counts. 3. Add a call to save_state() inside the simulation loop in the run() function in the Simulation class. 4. Add an option to the configuration file, and a get-function to the class definition, to configure the name of the output file. 5. Add a save_output_file() function to the Tracker class, which saves the information stored into a CSV file, using the file name in the configuration file. 6. Add a call to save_output_file() at the end of the run() function in the Simulation class. 7. Add a line to the log file along the lines of "Output file X saved". Example output file: party,strategy,time,x,y,votes "FF","hunter",1,0.4,0.2,201 "Labour","aggregator",1,0.9,0.1,610 "FG","predator",1,0.1,0.1,189 "FF","hunter",2,0.44,0.21,230 "Labour","aggregator",2,0.88,0.11,581 "FG","predator",2,0.1,0.13,189 (Note that this is rather inefficient use of file space. An alternative is to have two CSV files, one listing all parties and strategies and giving them a number, the second as above, but replacing the first two columns with just the party number.)