Make numeral faction IDs 1-indexed

To make them easier to work with in MATLAB/Octave
Fix Kit before sorting
Collect all faction metadata in one file per side
Add colormap definitions to faction metadata
Update read_stats.m to reflect preprocessor changes
Add faction colors taken from cardgamedb.com
Normalize colormaps
Add factions.m and align_labels.m
Add faction loyalties to faction metadata

That is, which IDs belong to which faction
Rename file variable in make_metadata() to output
Simplify tmpfile shenanigans in make_metadata

Make a copy of the untouched output from replace() and read from that,
instead of making tmpfiles for each addition and then putting them in at
the end.
Reorder output of make_metadata
Add output to make_metadata
Check for --dry-run in nuke_column
Make some --dry-run checks more compact
Read from CLI argument file if --dry-run

Otherwise we'll read the output file, meaning replacements will look
very funny if we've processed it already.
Add dry-run checks to some rm statements
Add output before replacing identity names
fixup! Add output to make_metadata
Make smart use of IFS in colnum

Use a for loop instead of a while loop to loop over column headers