Load footprint test data from files and simplify and extend testing
Move all golden files into real files. This makes them far easier to handle, and you can even load them in KiCad and use syntax highlighting.
Also simplifies and unifies many tests and allows setting extended diff lengths when doing these tests.
Adds the WRITE_GOLDEN_FILES
environment variable, which allows the golden files to be updated easily. But this must be used carefully - you can't just overwrite the golden files without verifying the new content is correct!
E.g. WRITE_GOLDEN_FILES=1 ./manage.sh unit_tests
Far too many of these tests should not be serialisation tests (exposed pad, for example is really trying to test geometry results, not serialisation of every pad aspect) but for now it's what we have, so just port them all to a unified system and then chip away at them.