Restructure test suite heirarchy

The new structure supports nested test suites and removes the need for
specific test "runners".