General Phylo improvements and allow longer strings for `cooc` field
Temporarily fixes #290 (closed).
In particular, I have:
- Setup a benchmark for the phylo algorithm, to understand and improve its performance;
- Added a golden test for the phylo algorithm, so that we can tweak the existing algorithm and catch regressions.
In terms of the actual bug that triggered #290 (closed) I haven't done any serious investigation yet because the algorithm takes a long time to compute (at least on my machine, which this morning was busy compiling nix stuff for the upgrade to GHC 9.4.7). My speculation is that due to the fact the phylo spans over a lot of years (from the 1960 to 2024) this is generating a very tall image, which overflows the maximum height supported by graphviz.