Make components' tests run on their own and from main repo

Tests can now be run from the main repo as well as independently for each component.

With these changes in place, each component is now self-sufficient. This resolves one of the things that prevented splitting off components from the main repo (#267).

Tight coupling between tests is now avoided, though it incurs some minor duplication. Each component has dedicated test config and bootstrap. Duplication of parts of the skeleton is not ideal, but helps to reduce dependencies between each test suite. Also, this eases the future subtree split.

Resolves / closes #268
Supersedes / closes #290