Added `data` field to tests, fixed tests and runner.
Provided better syntax for tests.
Added more predicates. Refactored stuff for partial applications.
Implemented data-driven tests (on backstage).
Intergrated data-driven tests into the system. Fixed bugs.

Also refactored them a bit to be able to run all them in DrRacket.
O(n^2) grouping is a bad idea after all. Need to rework test syntax
to allow O(n) pattern-matching parsing of declarations.
Merge branch 'data-driven'