Move all test-only code out of VecGeom library
VecGeom has several bits of code that are strictly for testing, but are compiled into the main vecgeom library, making
- Configuration awkward, due to addition of code dependent on whether testing is enabled or not
- The API/ABI of vecgeom dependent on a non-user facing option (
BUILD_TESTING
and options dependent on that) - Code isn't organised correctly, with headers/implementations occurring in various non-obvious locations
This MR is a simple reorganisation so that test-only code is located under test/
and built into not-installed libraries that are linked to the tests that use these interfaces.