Simplify how tests are defined.

Tests are now defined simply as a function with the signature
void my_test(struct cc_array *_cc_test_failures_).

The cc_suite struct now contains a pointer to an array of cc_test structs.
The last item in this array must be a zeroed cc_test struct.

The CC_TEST() macro now builds a compound literal cc_test struct and is used
to build the compound literal for initializing a cc_suite struct.

Updated all the existing tests to use the new style.
Replace struct cc_test with struct cc_def.

The cc_def struct is nearly identical to cc_test.  This is the first step in
moving towards a generic struct that represents both tests and suites.

Changed the name of the "run" field in cc_test to "test" in cc_def.
Replace struct cc_suite with struct cc_def.

Tests and suites are now represented by a tree of cc_def structs.
Changed struct cc_case to use an allocated array of ancestors.

Replaced the cc_array struct of suites with a plain old C array of
ancestors, along with an ancestor_count field.
Renamed CC_SUITE() macro to CC_SUITE_DEF().

The CC_SUITE_DEF() macro defines a struct cc_def containing a test suite.

Added a new CC_SUITE() macro that build the compound literal for a
cc_def struct for a suite, which enables the creation of nested suites.

Removed the now redundant CC_SUITE_OF_SUITES() macro.
Changed struct cc_def field "test" to "test_function".

Added cc_test_function typedef.
Use a plain old C array to hold test cases in cc_sequence struct.

Also added a count field to cc_sequence.
Added struct cc_results for holding test results.

The cc_results struct holds the array of test failures.  Changed the test
function signature to take a pointer to a cc_results struct instead of a
cc_array.  Updated CC_ASSERT_X() and CC_EXPECT_X() macros.
The cc_failure struct now forms a singly linked list.

The cc_results struct contains a linked list of cc_failure structs.  Failing
checks now push a newly alloced failure onto the results failure list.
Removed cc_array struct and supporting functions.

No longer using this dynamic array type.