starting implementation of testing interfaces

so that the components are self-testing, for run-time validation mainly