What's Changed
* Optimize getting the name of Echoes' ScriptInstanceHelper by henriquegemignani in https://github.com/randovania/retro-data-structures/pull/48
* Use compiled construct for parsing ScriptInstances by henriquegemignani in https://github.com/randovania/retro-data-structures/pull/49
* Improve CI, add pre-commit hook by henriquegemignani in https://github.com/randovania/retro-data-structures/pull/50
* rework script API by duncathan in https://github.com/randovania/retro-data-structures/pull/52
* Always parse all dependencies, ignoring is_mlvl by henriquegemignani in https://github.com/randovania/retro-data-structures/pull/51
* Two CPU cores, run dependency check by henriquegemignani in https://github.com/randovania/retro-data-structures/pull/53
* Add pyupgrade ruff rule by henriquegemignani in https://github.com/randovania/retro-data-structures/pull/55
* fix script API and add tests by duncathan in https://github.com/randovania/retro-data-structures/pull/54
* revert new script API by duncathan in https://github.com/randovania/retro-data-structures/pull/56
* new script API (again) by duncathan in https://github.com/randovania/retro-data-structures/pull/57
**Full Changelog**: https://github.com/randovania/retro-data-structures/compare/v0.19.2...v0.20.0