TestConfiguration cleanups.

* The test suite now implements ITestConfigurationProvider.

* ITestConfiguration is a read-only frontend to TestConfiguration.

* TestConfiguration manages the settings using a SettingsBag instance.

* We only send the read-only version when running remotely.
Refactorings, leading to automation.

This is not done yet, just don't want to risk losing this by only having
it on my local hard disk.