Major Changes
- Rename Runtime.exec to Runtime.run (#256) @ssbarnea
- Introduce use of JSON recursive type (#253) @ssbarnea
- ruff: Make optional arguments keyword-only (#251) @ssbarnea
- Finish pathlib migration (#245) @ssbarnea
- Make Runtime.project_dir use Path (#244) @ssbarnea
- Migrate some functions to use Path (#243) @ssbarnea
- Make Runtime.cache_dir use Path (#240) @ssbarnea
- Remove support for py38 (#239) @ssbarnea