start of re-write for test infrastructure