Initial commit
edit README
Set up Build infra
generic client-server testing
generic YAML-generated testing
generic manifest testing
generic perl eval test module
autoload tests for generic generated testing
script to run standalone yaml file of tests
generic structured data tests
test code
fixup testsuite double-load
allow configuration via preloaded captures

Using captures as configuration to drive test execution.

The captures have to be set up before the tests are loaded.

This is problematic since captures were stored against the fixture
object; so we change that to use the class of the fixture object
instead, which means a simple __PACKAGE__->capture(...) is usually all
that is required.

That changes also means that captures can communicate across test
documents, so care is needed where collisions are possible.

It might be better to use a different syntax, e.g. \c<key> for
class-level captures and keep using \k<key> for per-fixture captures.
support 'ncmd' commands which are not tests

Almost allows non-test commands to be specified, e.g. for preparation
or cleanup purposes. Captures and parsers are still executed.

It's only "almost" because Test::Command::Simple insists on testing
the startup of the command (return code from open3), so there is still
one test associated with an 'ncmd' test doc.
API refactoring

Some refactoring of the tests generator code to allow easier use as an
API, making it easier to have "subtests" which are executed with the
right test document and do all the proper interpolation and capture
calls.

Also better subclassing features.
control-flow features

include, todo, skip

Here we have "subtests" in YAML, leveraging the refactored API and the
subclassing helpers.

Tests demo each use case, including capture interpolation.
objectify test sequence

for clarity, we hope
allow test naming

Tests can be named by setting the 'test' key.
allow filename and line number to be interpolated in tests

Somewhat hacky
insert default test names with file/line