Collate tests in separate executables
Collate tests in separate executables

This allows these executables to set up the static parts of their environment only for themselves, instead of for all tests.
This is intended to improve the performance of running these tests. On my computer the execution time of running the tests is reduced from 148s to 43s.

The executing of the tests can further be reduced by removing the gtest_discover_tests lines. The tests then simply execute one executable after another, and this allows GoogleTest to set up the test suite once per test suite. Currently CTest restarts the entire executable for every test, which is very inefficient. Without those lines the tests run in less than a second on my computer. However it also reduces the output to just 23 tests (one per suite) so to not compromise the output I've not made that change here.

Ultimaker/CuraEngine,Ultimaker/CuraEngine