PIPE-2924: Add unit testing workflow.
This commit introduces a unit testing workflow (test-unit.yml) that runs on pushes to key development branches.
To support this and reduce duplication with the existing documentation build, new options to the reusable workflow (`env-setup-run-template.yml`) have been added:
* A `pip_install` input to allow workflows to specify their own Python dependencies (e.g., .[dev] for testing, .[docs] for documentation).
* A test_data input to conditionally perform a sparse-checkout of large test data files from an external repository, ensuring runners only download what is necessary.
The `test-unit.yml` and `build-gh-pages.yml` workflows have been updated to use this updated template, simplifying their structure and centralizing the environment setup logic.